API

Ҳама чизеро, ки сайт дар HTTP иҷро мекунад: талаботро муайян мекунад ва сатрро бояд тоза кунад, панелро ҷойгир мекунад ва то он даме, ки судя ҳамаи шартҳоро ҳал кунад, овоз медиҳад. Яке аз панелҳо, яке аз ҳисобҳо, яке аз маҳдудиятҳои хароҷот - бе браузер.

Калидҳои шумо

Калидҳо аз ҳисоби шумо эҷод карда мешаванд. Ба система ворид шавед ё якеро эҷод кунед - ҳисоби нав кредити оғозёбиро мегирад, ки барои match-и воқеӣ кофист.

Бақайдгирӣ Ворид шудан
Аслшиносӣ

Калидро ҳамчун нишонаи соҳиб дар ҳар дархост фиристед. Ин идентификаторест, ки метавонад баланси шуморо сарф кунад, бинобар ин онро ҳамчун гузарвожа истифода баред: танҳо дар тарафи сервер, ҳеҷ гоҳ дар браузер, ҳеҷ гоҳ дар репозитория. Калиди ифлосшуда аз ин саҳифа барҳам дода мешавад ва фавран кор карданро қатъ мекунад.

curl https://theorem.chat/api/v1/account/ \
  -H "Authorization: Bearer thm_live_xxxxxxxx.xxxxxxxxxxxxxxxx"

URL- и асосӣ: https://theorem. chat/ api/ v1 /. Дархостҳо ва ҷавобҳо JSON мебошанд. Версия дар роҳ аст, бинобар ин тағйироти вайроншуда ҳамчун v2 фиристода мешавад ва коди шумо кор мекунад.

POST /api/v1/matches/

Оғози match. Танҳо мақсад лозим аст: панелро берун кунед ва тартиботи пешфарз аз истеҳсолкунандаи гуногун ҷойгир карда мешавад, зеро моделҳои омӯзишӣ дар маълумоти ҳамҷояшуда нуқтаҳои торик ва панели бо худ мувофиқаткунандаро тақсим мекунанд. match ба таври худкор дар навбати худ ҷойгир карда мешавад ва аз тарафи сервер кор карда мешавад, бинобар ин дархости ба зудӣ қабул карда мешавад.

curl -X POST https://theorem.chat/api/v1/matches/ \
  -H "Authorization: Bearer $THEOREM_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "goal": "Every prime p > 3 satisfies p^2 = 1 (mod 24).",
    "rigor_preset": "formal",
    "seats": [
      {"model": "anthropic/claude-opus-4.5"},
      {"model": "openai/gpt-5", "stance": "Attack the statement."}
    ],
    "max_rounds": 8,
    "usd_ceiling": "2.00",
    "public": false
  }'

& Маконҳо

  • goal — Дархости шумо, бо калимаҳои худ. Дархост.
  • rigor / rigor_preset — аломати барои шумо барои доварӣ, ба таври дуруст ё бо номи: стандарт, нашр, расмӣ, ҷоиза, қарор. Пешфарзи номуайян рад карда мешавад ба ҷои гузаронидани пешфарз - доварӣ бо стандарте, ки шумо талаб накардаед, аз хатогӣ бадтар аст.
  • seats — аз ду то шаш ҷойи баҳс, ҳар кадоме аз онҳо як модели id аз GET /api/v1/models/ ва як мавқеи ихтиёрӣ.
  • referee — Модули, ки дар асоси талаботҳо амал мекунад ва далелҳоро аз нав меозмояд. Инро сарф кардан лозим аст.
  • max_rounds, usd_ceiling — Даромадан ба ҳадди баландӣ match- ро ба ҷои сарф кардани маблағи зиёд аз он бозмедорад, ва match- и боздошташуда аз ҷое, ки боздошта шуда буд, идома медиҳад.
  • public — нашри match- ро ба галереяи умумӣ.
GET /api/v1/matches/{token}/

Ҳамаи match: вазъият, шартҳои қабул ва чӣ тавр ҳар як ҳал карда шуд, китоби ҳисоботи натиҷаҳои муайяншуда, далелҳо дар пушти ҳар як ҳукм, ва ҳукми вақте ки яке вуҷуд дорад. match барои дақиқаҳо то соатҳо кор мекунад, бинобар ин ҳар як чанд сония дар вақти зинда пурсиш кунед - ҷавоб ба шумо мегӯяд, ки кай бозистед.

{
  "token": "k3m9x…",
  "status": "solved",
  "round": 5,
  "progress": 100,
  "usd_spent": "0.734120",
  "usd_ceiling": "2.000000",
  "criteria": [
    {"text": "p^2 - 1 is divisible by 8", "status": "met", "settled_round": 2},
    {"text": "p^2 - 1 is divisible by 3", "status": "met", "settled_round": 3}
  ],
  "evidence": [
    {"kind": "computation", "code": "…", "output": "…", "verified": true}
  ],
  "verdict": "…"
}

Ҳолатҳо: дар навбат, иҷро шуда истодааст, боздошта шудааст, needs_funds, ҳал шудааст, сарф шудааст, занг задааст, қатъ шудааст. Чаҳор охирин терминалҳо мебошанд; боздошта шудааст, needs_funds, сарф шудааст ва занг задааст метавонад идома ёбад.

POST /api/v1/matches/{token}/resume/

Дархости боздошташударо match раундҳои дигар ё маблағи бештар медиҳад. Ҳама чизҳое, ки панел муайян кардааст, нигоҳ дошта мешавад - натиҷаҳо ба китоби ҳисоб як бор навишта мешаванд ва ҳеҷ гоҳ аз нав бароварда намешаванд, ва хатогиҳо сабт карда мешаванд, ки бозгашт ба роҳе, ки аллакай ноком шудааст, пешгирӣ мекунанд.

curl -X POST https://theorem.chat/api/v1/matches/$TOKEN/resume/ \
  -H "Authorization: Bearer $THEOREM_KEY" \
  -H "Content-Type: application/json" \
  -d '{"more_rounds": 4, "more_usd": "2.00"}'
Боқимонда
  • GET /api/v1/ — ки вуҷуд дорад, то ки клиент метавонад роҳи худро бе ин саҳифа пайдо кунад.
  • GET /api/v1/models/ — моделҳои seatable бо дараҷаи онҳо, тирезаи контекстӣ ва фоизҳои ҳар миллион токен. Рӯйхати якхела, ҳамчун саҳифа.
  • GET /api/v1/matches/ — matches- и шумо, аввал навтарин; филтр бо ҳолати, саҳифа бо маҳдудият ва гузариш.
  • GET /api/v1/account/ — баланс, хароҷоти умр ва оё шумо дар кредити пешпардохт ё калиди худи худ
  • GET /api/v1/keys/, DELETE /api/v1/keys/{prefix}/ — Калидҳои рӯйхат ва барҳамдиҳӣ. Калиди якум танҳо дар ин ҷо, дар браузер сохта мешавад.
Хатогиҳо

Ҳар як хатогӣ шакли якхела дорад. Дарахт дар код, ки устувор аст; иттилооти проза аст ва метавонад аз нав навишта шавад.

{"error": {"code": "insufficient_balance",
           "message": "Add credit or connect your own inference key…"}}

401 барои калиди гумшуда ё бозхондашуда, 402 барои баланси холӣ, 404 барои нишонаи шумо, 409 барои match, ки аллакай кор мекунад, 429 барои шумо хеле тез, 400 барои ҳамаи дархостҳои худ хатогӣ.

Маҳдудияти суръат

Ҳисобкунии ҳар як калид: 240 хондан ва 30 match оғоз дар як дақиқа. Дар хотира барои он, ки - он чӣ дар ҳақиқат маҳдуд мекунад match он аст, ки он баланси шуморо сарф мекунад, ва инҳо дар ин ҷо барои боздоштани кӯшишҳои дубора ё полер кор кардан ба таври мӯътадил. Дар болои маҳдудият шумо 429 мегиред; match кор кардан ҳар як чанд сония кор кунед, на пайваста.

Ин раванди гузариш ба системаи нави ҳисоббарорӣ, ки дар он ҳисоббарории рақамӣ ба кор дароварда мешавад, ба номи ҳисоббарории рақамӣ ё ҳисоббарории рақамӣ маъруф аст. Чӣ тавр ҳисоботдиҳӣ кор мекунад