Wyodrębnianie treści tekstowej za pomocą NextPDF Connect (Pro)
W skrócie
Dział zatytułowany „W skrócie”Użyj extract_text, aby wyodrębnić tekst z istniejącego pliku PDF na potrzeby indeksowania, analizy lub dalszego przetwarzania. Dostawca narzędzi Pro rejestruje new ExtractTextTool() pod nazwą protokołu extract_text, a ta strona dodatkowo weryfikuje to powiązanie. extract_text to narzędzie z poziomu Pro. Podczas uruchamiania serwer sprawdza jego dostępność za pomocą class_exists() i rejestruje je tylko po zainstalowaniu pakietu Pro. Możesz zażądać wyniku w postaci zwykłego tekstu, ograniczyć wyodrębnianie do zakresu stron albo uzyskać ustrukturyzowane dane wyjściowe podzielone na strony.
Instalacja
Dział zatytułowany „Instalacja”composer require nextpdf/servercomposer require nextpdf/proPowiąż transport. Zanim zaczniesz polegać na narzędziu, potwierdź jego dostępność za pomocą diagnostic.capabilities.
Przegląd koncepcyjny
Dział zatytułowany „Przegląd koncepcyjny”Proces wyodrębniania odczytuje operatory wyświetlające tekst ze strumienia treści w kolejności strumienia (ISO 32000-2 §9.4). Wynik odzwierciedla zakodowaną kolejność odczytu (ISO 32000-2 §9.10). W przypadku zeskanowanego pliku PDF bez warstwy tekstowej zwracane jest niewiele tekstu albo nie ma go wcale. Wynika to z pliku źródłowego, a nie z wady narzędzia. format: "plain" zwraca jeden ciąg znaków. format: "structured" zwraca obiekty dla poszczególnych stron z liczbą znaków. page_range ogranicza liczbę przetwarzanych stron.
Powierzchnia API
Dział zatytułowany „Powierzchnia API”| Narzędzie | Poziom | Rola | Poziom ryzyka |
|---|---|---|---|
extract_text | Pro | Wyodrębnianie tekstu (zwykły / ustrukturyzowany / zakres) | Bezpieczne |
parse_pdf | Core (sterowane zmienną środowiskową) | Struktura niskiego poziomu (liczba stron, metadane) | Bezpieczne |
Nazwy narzędzi odpowiadają nazwom protokołów w rejestrze. Katalog narzędzi pełni rolę katalogu referencyjnego. Dostępność narzędzi zależy od zainstalowanego poziomu.
Przykład kodu — szybki start
Dział zatytułowany „Przykład kodu — szybki start”extract_textz parametremsource(ścieżka możliwa do odczytania przez serwer) orazformat: "plain".extract_textz parametrempage_range: "1-3"dla podzbioru stron.extract_textz parametremformat: "structured", aby otrzymać dane wyjściowe podzielone na strony.
Przykład kodu — produkcja
Dział zatytułowany „Przykład kodu — produkcja”Użyj parse_pdf (lub wcześniejszego wywołania extract_text bez ograniczeń), aby uzyskać liczbę stron, zanim zażądasz konkretnego zakresu. W przypadku generowania wspomaganego wyszukiwaniem (RAG) lub indeksowania preferuj format: "structured", żeby każdą stronę można było niezależnie dzielić na fragmenty. W przypadku zaszyfrowanego źródła podaj parametr hasła. Liczba znaków oznacza liczbę punktów kodowych UTF-8, a nie bajtów.
Przypadki brzegowe i pułapki
Dział zatytułowany „Przypadki brzegowe i pułapki”- Brak źródła. Nieprawidłowa ścieżka skutkuje błędem „nie znaleziono pliku”. Używaj ścieżek bezwzględnych, które serwer może odczytać.
- Zeskanowany plik PDF. Bez warstwy tekstowej wyodrębnianie zwraca pusty lub prawie pusty tekst. Najpierw wykonaj optyczne rozpoznawanie znaków (OCR) na źródle.
- Strona poza zakresem. Zakres wykraczający poza dokument jest odrzucany z informacją o rzeczywistej liczbie stron.
- Zaszyfrowane źródło. Podaj parametr hasła.
- Brak Pro. Przy użyciu samego Core
extract_textnie jest rejestrowane. Sprawdź za pomocądiagnostic.capabilities.
Wydajność
Dział zatytułowany „Wydajność”Wyodrębnianie skaluje się wraz z rozmiarem dokumentu, a przewidziany budżet dopuszcza duże dane wejściowe. Każdy wytworzony artefakt ma profil structural, ponieważ narzędzie zwraca tekst, a nie plik PDF.
Uwagi dotyczące bezpieczeństwa
Dział zatytułowany „Uwagi dotyczące bezpieczeństwa”Wyodrębniony tekst może zawierać poufne treści. Traktuj wynik jako poufny i przekazuj go wyłącznie zaufanym kanałem. Narzędzie nie zapisuje danych w systemie plików. Odczytuje ścieżkę źródłową z uprawnieniami serwera, dlatego ogranicz, które ścieżki może przekazać wywołujący.
Zgodność
Dział zatytułowany „Zgodność”| Stwierdzenie | Specyfikacja | Klauzula | reference_id |
|---|---|---|---|
| Tekst jest wyświetlany przez operatory wyświetlania tekstu w kolejności strumienia. | ISO 32000-2 | §9.4 | |
| Wyodrębnianie odzwierciedla zakodowaną kolejność odczytu. | ISO 32000-2 | §9.10 |
Ten przepis nie gwarantuje, że wyodrębniony tekst zachowa wierną logiczną kolejność odczytu w przypadku dokumentu bez tagów. Kolejność jest kolejnością zakodowaną.
Kontekst komercyjny
Dział zatytułowany „Kontekst komercyjny”extract_text to narzędzie z poziomu Pro, rejestrowane tylko wtedy, gdy pakiet Pro zostanie rozpoznany podczas uruchamiania serwera.
Dostępność transportu
Dział zatytułowany „Dostępność transportu”| Transport | Dostępny | Uwagi |
|---|---|---|
| MCP (stdio) | Tak (Pro) | Duża ilość tekstu zwiększa rozmiar ramki stdio. |
| REST | Tak (Pro) | Strumieniuj duże wyniki tam, gdzie jest to obsługiwane. |
| gRPC | Tak (Pro) | Przy dużej ilości tekstu obowiązują limity rozmiaru wiadomości. |
Poziom ryzyka HITL
Dział zatytułowany „Poziom ryzyka HITL”extract_text jest klasyfikowane jako Bezpieczne (tylko do odczytu, bez efektów ubocznych) i nigdy nie wymaga potwierdzenia.
Koperta JSON bramki potwierdzenia
Dział zatytułowany „Koperta JSON bramki potwierdzenia”Wyodrębnianie w trybie tylko do odczytu nigdy nie wymaga potwierdzenia:
{ "allowed": true }