Wyszukiwanie i pobieranie dokumentów

W tym przewodniku znajdziesz przykłady użycia funkcji interfejsu Developer Knowledge API: wyszukiwania dokumentów, pobierania pojedynczego dokumentu i pobierania wielu dokumentów w ramach jednej operacji.

Zanim zaczniesz, włącz interfejs API i wygeneruj klucz Developer Knowledge API, a następnie zapisz go w zmiennej środowiskowej:

export DEVELOPERKNOWLEDGE_API_KEY="YOUR_API_KEY"

Wyszukiwanie dokumentów w aplikacji SearchDocumentChunks

Użyj metody documents.searchDocumentChunks , aby znaleźć fragmenty dokumentu pasujące do ciągu zapytania. Wyniki zawierają fragmenty treści z dokumentu i parent odwołanie, którego możesz użyć do pobrania pełnej treści dokumentu.

Poniższy przykład wyszukuje dokumenty pasujące do zapytania „BigQuery”:

curl "https://developerknowledge.googleapis.com/v1/documents:searchDocumentChunks?query=BigQuery&key=$DEVELOPERKNOWLEDGE_API_KEY"

Wyniki wyszukiwania możesz zawęzić za pomocą parametrów takich jak pageSize, aby ograniczyć liczbę wyników na stronie, i pageToken, aby pobrać kolejne strony.

Filtrowanie wyników wyszukiwania

Użyj parametru filter, aby zastosować ścisły filtr do wyników wyszukiwania. Filtr jest stosowany do metadanych dokumentów powiązanych z fragmentami wyników wyszukiwania.

Pola obsługiwane w przypadku filtrowania:

  • data_source (STRING): źródło dokumentu, np. docs.cloud.google.com.
  • update_time (TIMESTAMP): sygnatura czasowa ostatniej aktualizacji dokumentu.
  • uri (STRING): identyfikator URI dokumentu, np. https://docs.cloud.google.com/bigquery/docs/tables.

Obsługiwani operatorzy:

  • Pola STRING obsługują operatory = (równa się) i != (nie równa się) w przypadku dopasowania ścisłego całego ciągu znaków.
  • Pola TIMESTAMP obsługują wartości =, <, <=, > i >=. Sygnatury czasowe muszą być w formacie RFC-3339 (np. "2025-01-01T00:00:00Z").

Wyrażenia możesz łączyć za pomocą operatorów logicznych AND, ORNOT (lub -). Pamiętaj, że OR ma wyższy priorytet niż AND.

Poniższy przykład wyszukuje dokumenty pasujące do hasła „BigQuery” i ogranicza wyniki do tych z docs.cloud.google.com:

curl "https://developerknowledge.googleapis.com/v1/documents:searchDocumentChunks?query=BigQuery&filter=data_source%3D%22docs.cloud.google.com%22&key=$DEVELOPERKNOWLEDGE_API_KEY"

Odbieranie dokumentu za pomocą urządzenia GetDocument

Użyj metody documents.get, aby pobrać pełną treść pojedynczego dokumentu.

Poniższy przykład pobiera dokument o nazwie documents/DOCUMENT_ID:

curl "https://developerknowledge.googleapis.com/v1/documents:get?name=documents/DOCUMENT_ID&key=$DEVELOPERKNOWLEDGE_API_KEY"

Odpowiedź to pełny zasób Document, w tym pole content.

Pobieranie wielu dokumentów za pomocą BatchGetDocuments

Użyj metody documents.batchGet, aby pobrać maksymalnie 100 dokumentów według nazwy w ramach jednego wywołania interfejsu API. Jest to bardziej wydajne niż wysyłanie wielu żądań GetDocument.

Poniższy przykład pobiera 2 dokumenty według nazwy:

curl "https://developerknowledge.googleapis.com/v1/documents:batchGet?names=documents/DOCUMENT_ID_1&names=documents/DOCUMENT_ID_2&key=$DEVELOPERKNOWLEDGE_API_KEY"

Odpowiedź zawiera listę żądanych zasobów Document.