View file | ||
---|---|---|
|
View file | ||
---|---|---|
|
View file | ||
---|---|---|
|
View file | ||
---|---|---|
|
...
Table of Contents |
---|
API
...
API Рассылок
...
для переписки и управления сервисами AutoFAQ
API позволяет:
от имени пользователя вести переписку с сервисом AutoFAQ, включая переписку с ботом и операторами сервиса
создавать рассылки пользователям
управлять настройками сервиса
KB CRUD API для управления Базами Знаний /core-api/crud/
CRUD API служит для создания Баз Знаний, наполения наполнения их документами и публикации (design-time).
Для удобства все PUT JSON вызовы работают как REST JSON PATCH - то есть можно передать только те поля, значения которых необходимо обновить (нет нужды передавать полное состояние)
Жизненный цикл БЗ:
Создание. БЗ имеет имя, настройки языка, режима дообучения и apikey service_token для доступа к опубликованному сервису QNA.
Наполнение документами. Документ - это (вопрос, ответ, опционально формулировки вопроса, файловые атачи)
Публикация. Опубликованная БЗ предоставляет сервис ответов на вопросы (см QNA API ниже)
Редактирование конентаконтента, модерация и прием рекоммендаций документов и формулировок.
Удаление БЗ
Аутентификация
Возможны 2 варианта аутентификации
jwt cookie полученная при авторизации в UI на странице
/login
либо через API вызов/api/ext/v2/login
user_token
- строковый ключ пользователя (access token, apikey) можно узнать
...
у администратора.
При использовании user_token
может быть передан несколькими способами:
Предпочтительный: Standard Basic Auth HTTP header -
Authorization: Bearer {user_token}
Альтернативный: Private HTTP header
AUTOFAQ-User-Token: {user_token}
...
Для отладки: Через URL query query parameter - user_token={user_token}
Для удобства все PUT JSON вызовы работают как REST JSON PATCH - то есть можно передать только те поля, значения которых необходимо обновить (нет нужды передавать полное состояние)
REST JSON CRUD API: https://app.swaggerhub.com/apis-docs/denis_kiselev/autofaq_crud_api/1.0
Квоты
100 запросов в минуту
100000 запросов в день
Knowledge base QNA API (run-time).
QNA API служит для запросов к опубликованной базе знаний (БЗ) и сбора обратной связи.
Отправить запрос в данную БЗ: https://autofaq.ai/api_doc#rec56009662
Отправить запрос сразу в несколько БЗ: Пример QNA batch query
Отправить обратную связь: https://autofaq.ai/api_doc#rec56022196
Аутентификация
service_token
- строковый ключ опубликованный БЗ (access token, apikey).
Как узнать service_token
для доступа опубликованной БЗ можно получить зная user_token
запросом CRUD API GET core-api/crud/api/v1/services/{service_id}
Code Block |
---|
curl -H "AUTOFAQ-User-Token: {user_token}" https://chat.autofaq.ai/core-api/crud/api/v1/services/{service_id} |
...
Пример
service_token
передается в теле запроса JSON POST query.
Code Block |
---|
curl -v -H "Content-Type: application/json" -XPOST https://chat.autofaq.ai/core-api/query/api/v1/query -d '
{"query": "привет, сколько стоит", "top_k": 3, "service_id": 107742, "service_token": "{service_token}"}
' |
Подробнее примеры использования см вызовы методов /query и /click во вложении в демо скипте test_winnie_pooh.py и в документации https://autofaq.ai/api_doc#rec56009662
Квоты
Квоты на доступ к одной опубликованной БЗ (service_token
):
900 запросов в минуту
200000 запросов в день
Примеры
Тривиальный пример жизненного цикла см скрипт test_winnie_pooh.py в атаче.
Пример добавления документа с формулировками:
Code Block |
---|
CRUDAPI_URL=https://api.autofaq.ai/api/v1 USER_TOKEN=9d9d68ee3cc14c4d997f7ca076ed14ac \
python3 tutorial_crud_paraphrase.py |
...
Коды ошибок
Expand | ||
---|---|---|
| ||
|
Expand | ||
---|---|---|
| ||
HTTP 400 |
...
|
...
schema:
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
KB QNA QUERY API /core-api/query/
QNA API служит для запросов на классификацию в опубликованной базе знаний и отправке обратной связи для дообучения базы знаний (run-time).
API позволяет
отправить запрос на классификацию текста по одной базе знаний
отправить пакетный запрос на классификацию по нескольким базам знаний сразу
отправить информацию для дообучения базы знаний (расширению обучающей выборки существующих записей или созданию новых записей)
Аутентификация
Каждая опубликованная БЗ имеет собственный ключ доступа к QNA API - service_token
- строковый ключ (access token, apikey)
Ключ service_token
можно получить из UI на странице настроек БЗ либо CRUD API запросом GET /core-api/crud/api/v1/services/{service_id}/tokens
service_token
передается в теле запроса вместе с запрашиваемой БЗ service_id
:
Code Block |
---|
curl -v -H "Content-Type: application/json" -XPOST https://chat.autofaq.ai/core-api/query/api/v1/query -d '
{"query": "привет, сколько стоит", "top_k": 3, "service_id": 107742, "service_token": "{service_token}"}
' |
Подробнее примеры использования см вызовы методов /query и /click во вложении в демо скипте test_winnie_pooh.py
Пример использования batch query API
Квоты
Квоты на количество запросов в одну БЗ
Максимальное число запросов в минуту: 1200
Максимальное число запросов в сутки: 1000000
Примеры
Тривиальный пример жизненного цикла см скрипт test_winnie_pooh.py во вложении выше на этой странице .
Пример добавления документа с формулировками:
Code Block |
---|
CRUDAPI_URL=https://api.autofaq.ai/api/v1 USER_TOKEN=9d9d68ee3cc14c4d997f7ca076ed14ac \
python3 tutorial_crud_paraphrase.py |