Конечные точки
Конечные точки
POST
load_document_to_collection
Используйте конечную точку для загрузки файла с метаданными в коллекцию.
Параметры запроса:
collection_name— имя коллекции
Параметры формы (multipart/form-data):
-
file— путь к файлу. -
metadata(строка, JSON) — метаданные документа.Пример{
"sys_id": "67890",
"status": "draft",
"priority": 2,
"flag": false,
"type": "safety_instruction",
"created": "2024-01-02T00:00:00Z"
}
Пример запроса (curl):
curl -X POST "http://localhost:3002/load_document_to_collection?collection_name=test_collection" \
-H "Authorization: Bearer <TOKEN>" \
-F "metadata={\"sys_id\":\"67890\",\"status\":\"draft\",\"priority\":2}" \
-F "file=@/path/to/file.pdf"
load_text_to_collection
Используйте конечную точку для загрузки текста с метаданными в коллекцию.
Параметры запроса:
collection_name— имя коллекции.
Тело запроса (JSON):
{
"metadata": {
"sys_id": "12345",
"status": "active",
"priority": 1,
"flag": true,
"type": "project_management",
"created": "2024-01-01T00:00:00Z"
},
"text": "Документ о системе управления проектами..."
}
get_relevant_documents
Используйте конечную точку для получения релевантных документов (поиск с фильтрацией).
Параметры запроса:
query(String) – поисковый запрос.k(Integer) – количество возвращаемых чанков (минимум 1).
Тело запроса (JSON):
collection_names(Array) – список коллекций для поиска, не меньше одной.metadata(String, необязательный) – строка-фильтр. Читайте подробнее в разделе Фильтрация при поиске (ретриве) документов.alpha(Float, необязательный) – вес векторной части поиска, от 0 до 1:1.0– только векторный поиск,0.0– только полнотекстовый поиск BM25. Если параметр не передан, используется значение переменнойHYBRID_SEARCH_ALPHA. Параметр доступен начиная с версии 1.0.4.rerank(Boolean, необязательный) – переранжирование результатов. Значениеfalseвыключает переранжирование для запроса. Если параметр не передан, используется значение переменнойRERANK_ENABLED. Параметр доступен начиная с версии 1.0.4. В версии 1.0.5 запрос со значениемtrueприRERANK_ENABLED=Falseвозвращает ошибку 400. В версии 1.0.4 значениеtrueвключает переранжирование независимо от настройки сервиса.window(Integer, необязательный) – расширение контекста: текст найденного чанка дополняется текстом соседних чанков того же документа, не больше указанного числа с каждой стороны. Отдельными элементами ответа соседние чанки не возвращаются. Значение0выключает расширение контекста. Если параметр не передан, используется значение переменнойRETRIEVE_WINDOW_SIZE. Параметр доступен начиная с версии 1.0.5 и работает для коллекций, созданных в версии 1.0.5 и выше.
Читайте подробнее о переменных окружения в разделе Поиск.
{
"collection_names": ["test_collection"],
"metadata": "status=active^priority=1",
"alpha": 0.7,
"window": 1
}
get_content_by_tag
Используйте конечную точку для получения документов по заданному тегу (с использованием фильтра по метаданным).
Параметры запроса:
collection_name(String) — имя коллекции.
Тело запроса (JSON):
tag_info— строка-фильтр по метаданным (аналогичноmetadataвыше).
{
"tag_info": "status=active"
}
GET
get_list_of_documents_names
Используйте конечную точку для получения списка документов в коллекции.
Параметры:
collection_name(String) — имя коллекции.
Ответ: Список документов (doc_id) в коллекции.
get_list_of_collection
Получение списка всех коллекций
Ответ: Список коллекций.
DELETE
delete_document_from_collection
Используйте конечную точку, чтобы удалить документ из коллекции.
Параметры:
id_value(String) — ID документа.collection_name(String) — имя коллекции.
delete_collection
Используйте конечную точку, чтобы удалить коллекцию.
Параметры:
collection_name(String) — имя коллекции.
Примеры схем для обращения
POST /load_text_to_collection?collection_name=test_collection
{
"metadata": {
"sys_id": "12345",
"status": "active",
"priority": 1,
"flag": true,
"type": "project_management",
"created": "2024-01-01T00:00:00Z"
},
"text": "Документ о системе управления проектами..."
}
curl -X POST "http://localhost:3002/load_document_to_collection?collection_name=test_collection" \
-H "Authorization: Bearer <TOKEN>" \
-F "metadata={\"sys_id\":\"67890\",\"status\":\"draft\",\"priority\":2}" \
-F "file=@/path/to/file.pdf"
POST /get_relevant_documents?query=project&k=5
{
"collection_names": ["test_collection"],
"metadata": "status=active^priority=1"
}
POST /get_content_by_tag?collection_name=test_collection
{
"tag_info": "status=active"
}