API EverySearch Перекрёстная проверка
Состояние API
- Состояние за 24 ч
- Норма
- Среднее время за 24 ч
- —
- Стабильно / норма
- Доступно
- Ограничено
- Почти недоступно
Последние 24 часа
Последние 30 дней
Прогоняет один вопрос через несколько цепочек поиска, работающих по-разному, ранжирует источники по числу механизмов, которые их нашли, а затем загружает исходный текст источников с наивысшим рейтингом. Результат показывает, насколько можно доверять выводу и когда ему доверять не стоит, а не просто сообщает, что удалось найти
Цена: $2.78 за 1 000 запросов ($0.002778 за вызов). Неудачные вызовы и пустые результаты не оплачиваются. Один вызов считается как 4 поиска: он запускает 4 цепочки поиска, которые работают по-разному. Если успешны только некоторые из них, вы платите только за успешные, но не больше указанной цены.
Промпт для ИИ
Помогите мне написать скрипт, который вызывает API EveryInfra «Перекрёстная проверка».
Контракт API:
- Запрос: POST https://api.everyinfra.com/api/v1/search с заголовком Authorization: Bearer <API Key>. Берите ключ из переменной окружения EVERYINFRA_API_KEY, не указывайте его в коде.
- В теле запроса задайте для tool значение crosscheck, а параметры передайте в params.
- Обязательные параметры:
- q: Вопрос или утверждение для проверки.
- Необязательные параметры:
- num: Число результатов, которое получает каждая цепочка поиска.
- since: Только источники после этой даты.
- read_top: Для скольких источников из верхней части рейтинга загружать исходный текст; при 0 тексты не загружаются.
- depth: Набор по умолчанию, если mechanisms не задан: quick использует только поиск по ключевым словам, standard добавляет семантический поиск, deep запускает все четыре механизма. (допустимые значения: quick / standard / deep)
- mechanisms: Механизмы поиска, которые нужно запустить; если параметр задан, depth игнорируется. (допустимые значения: keyword / index / semantic / reasoning / community)
- Пример тела запроса:
{
"tool": "crosscheck",
"params": {
"q": "Python 3.13 release date",
"depth": "quick",
"num": 5
}
}
- Оплата: Цена: $2.78 за 1 000 запросов ($0.002778 за вызов). Неудачные вызовы и пустые результаты не оплачиваются. Один вызов считается как 4 поиска: он запускает 4 цепочки поиска, которые работают по-разному. Если успешны только некоторые из них, вы платите только за успешные, но не больше указанной цены.
- При ошибке 422 исправьте параметры по подсказкам и допустимым значениям из ошибки. При 429 или 503 дождитесь истечения Retry-After и повторите попытку.
Прежде чем писать код, спросите меня, сколько записей нужно обработать и в каком формате сохранить результаты, затем согласуйте со мной план и примерную стоимость.Параметры запроса
| Имя | Расположение | Тип | Обязательный | По умолчанию | Описание |
|---|---|---|---|---|---|
Authorization | header | string | Да | - | Укажите Bearer, а после него — ваш API-ключ. Создайте ключ в консоли; никогда не указывайте его в URL и не храните в репозитории кода. |
tool | body | string | Да | crosscheck | Название инструмента, фиксированное значение. |
q | body.params | string | Да | - | Вопрос или утверждение для проверки. |
num | body.params | integer (1–10) | Нет | 8 | Число результатов, которое получает каждая цепочка поиска. |
since | body.params | date | Нет | - | Только источники после этой даты. |
read_top | body.params | integer (0–) | Нет | 2 | Для скольких источников из верхней части рейтинга загружать исходный текст; при 0 тексты не загружаются. |
depth | body.params | string (enum) | Нет | deep | Набор по умолчанию, если mechanisms не задан: quick использует только поиск по ключевым словам, standard добавляет семантический поиск, deep запускает все четыре механизма.Допустимые значенияquickstandarddeep |
mechanisms | body.params | array | Нет | - | Механизмы поиска, которые нужно запустить; если параметр задан, depth игнорируется.Допустимые значенияkeywordindexsemanticreasoningcommunity |
Примеры кода
curl -X POST 'https://api.everyinfra.com/api/v1/search' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"tool": "crosscheck",
"params": {
"q": "Python 3.13 release date",
"depth": "quick",
"num": 5
}
}'Спецификация OpenAPI (JSON)Примеры читают ключ из переменной окружения EVERYINFRA_API_KEY; скопированный код никогда не содержит ваш ключ.
Пример ответа
Получено October 24, 2026 at 18:28 (UTC) вызовом этого API с параметрами из примера кода выше. results и count — реальный ответ этого вызова, из которого удалены персональные данные (имена, никнеймы, аватары, ссылки на профили, контакты). id, billing и quota меняются при каждом вызове, поэтому показана только их структура.
{
"id": "req_…",
"object": "search.crosscheck",
"query": "Python 3.13 release date",
"lanes": [
{
"lane": "keyword",
"label": "关键词索引",
"mechanism": "keyword",
"corpus": "open_web",
"description": "按查询词与链接权重召回,覆盖广、时效好,但只能找到标题或正文里确实含有查询词的页面",
"status": "ok",
"results": 5,
"latency_ms": 2386
},
{
"lane": "index",
"label": "索引检索",
"mechanism": "index",
"corpus": "open_web",
"description": "自有网页索引,条目自带正文摘要,适合直接判断这一页说了什么",
"status": "ok",
"results": 5,
"latency_ms": 5437
}
],
"independence": {
"mechanisms_planned": 2,
"mechanisms_live": 2,
"lanes_planned": 2,
"lanes_live": 2,
"degraded": false,
"live": [
"index",
"keyword"
],
"missing": []
},
"agreement": {
"by_url": [
{
"url": "https://docs.python.org/3/whatsnew/3.13.html",
"title": "What's New In Python 3.13",
"mechanisms": [
"index",
"keyword"
],
"lanes": [
"index",
"keyword"
],
"mechanism_count": 2
},
{
"url": "https://peps.python.org/pep-0719/",
"title": "PEP 719 – Python 3.13 Release Schedule",
"mechanisms": [
"index",
"keyword"
],
"lanes": [
"index",
"keyword"
],
"mechanism_count": 2
},
{
"url": "https://endoflife.date/python",
"title": "Python",
"mechanisms": [
"keyword"
],
"lanes": [
"keyword"
],
"mechanism_count": 1
}
],
"by_domain": [
{
"domain": "docs.python.org",
"mechanisms": [
"index",
"keyword"
],
"lanes": [
"index",
"keyword"
],
"mechanism_count": 2
},
{
"domain": "peps.python.org",
"mechanisms": [
"index",
"keyword"
],
"lanes": [
"index",
"keyword"
],
"mechanism_count": 2
},
{
"domain": "python.org",
"mechanisms": [
"index",
"keyword"
],
"lanes": [
"index",
"keyword"
],
"mechanism_count": 2
}
],
"max_url_mechanisms": 2,
"max_domain_mechanisms": 2
},
"unique_finds": [
{
"url": "https://endoflife.date/python",
"title": "Python",
"mechanism": "keyword",
"lane": "keyword"
},
{
"url": "https://www.reddit.com/r/Python/comments/1fybncq/python_313_released/",
"title": "Python 3.13 released",
"mechanism": "keyword",
"lane": "keyword"
},
{
"url": "https://thenewstack.io/python-3-13-blazing-new-trails-in-performance-and-scale",
"title": "Python 3.13: Blazing New Trails in Performance and Scale - The New Stack",
"mechanism": "index",
"lane": "index"
}
],
"answers": [],
"excerpts": [
{
"url": "https://docs.python.org/3/whatsnew/3.13.html",
"mechanism_count": 2,
"content": "### Navigation\n\n* [index](../genindex.html \"General Index\")\n* [modules](../py-modindex.html \"Python Module Index\") |\n* [next](3.12.html \"What’s New In Python 3.12\") |\n* [previous](3.14.html \"What’s new in Python 3.14\") |\n* [Python](https://www.python.org/) »\n* [3.15.1 Documentati…",
"fetched": false
},
{
"url": "https://peps.python.org/pep-0719/",
"mechanism_count": 2,
"content": "# Python Enhancement Proposals\n\n* [Python](https://www.python.org/ \"The Python Programming Language\") »\n* [PEP Index](../ \"Python Enhancement Proposals (PEPs)\") »\n* PEP 719\nPEP 719 – Python 3.13 Release Schedule\n\n# PEP 719 – Python 3.13 Release Schedule\n\nAuthor:\n: Thomas Wouter…",
"fetched": false
}
],
"verdict": {
"level": "weak",
"text": "⚠ 只有 2 条独立检索链在跑,交叉验证强度显著下降(满强度为 3 种以上互不相同的检索机制) 两种机制之间的一致只是弱印证:机制越少,一致越可能来自同源取材而非互相印证。请以一手原文为准。 有 2 种机制落在**同一个页面**上,这比落在同一个域名上强得多(同域名可能是不同帖子在说相反的话)。"
},
"notes": [],
"billing": {
"charged": …,
"charged_usd": …,
"balance_after_usd": …,
…
},
"quota": { … }
}Ошибки и оплата
- 401
- Ключ отсутствует или недействителен.
- 402
- Недостаточно средств на балансе. Сначала пополните баланс.
- 422
- Недопустимое имя или значение параметра. Исправьте запрос по подсказкам в сообщении об ошибке. Без списания.
- 429
- Достигнут лимит запросов в минуту. Подождите указанное в Retry-After время, затем повторите попытку.
- 503
- Не удалось выполнить. Зарезервированная сумма возвращается на баланс. Если результат неизвестен, проверьте его перед повторной попыткой.
- 200 (пусто)
- Нет данных. Без списания.