API Kantesti w OpenRouter
Korzystaj z Kantesti AI przez zgodne z OpenAI API chat completions OpenRoutera, z tym samym kluczem OpenRouter, którego używasz dla innych modeli.
Kantesti AI złożyło wniosek do programu dostawców OpenRouter. Poniższe modele zostaną udostępnione w OpenRouter po zakończeniu weryfikacji.
Modele
| ID modelu | Co zwraca |
|---|---|
kantesti/blood-test-v12 | Każdy wynik z zakresem referencyjnym i oceną, interpretacja kliniczna, wskaźnik zdrowia ze wskaźnikami ryzyka chorób, mapa ciała oraz biologiczny wiek krwi (PhenoAge). |
kantesti/blood-test-extract | Każdy wiersz dokładnie tak, jak został wydrukowany (nazwa badania, wynik, jednostka, zakres referencyjny), z danymi laboratorium i pacjenta. Bez interpretacji. |
Szybki start
Dołącz wynik do wiadomości użytkownika jako PDF (część file) lub jako obrazy stron (części image_url) i wywołaj model jak każdy inny model w OpenRouter.
curl https://openrouter.ai/api/v1/chat/completions \
-H "Authorization: Bearer $OPENROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kantesti/blood-test-v12",
"stream": true,
"language": "pl",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "Interpret this blood test."},
{"type": "file", "file": {"filename": "blood_test.pdf",
"file_data": "data:application/pdf;base64,JVBERi0xLjQK..."}}
]
}]
}'
import base64
from openai import OpenAI
client = OpenAI(base_url="https://openrouter.ai/api/v1", api_key="YOUR_OPENROUTER_API_KEY")
with open("blood_test.pdf", "rb") as f:
pdf = base64.b64encode(f.read()).decode()
response = client.chat.completions.create(
model="kantesti/blood-test-v12",
messages=[{"role": "user", "content": [
{"type": "text", "text": "Interpret this blood test."},
{"type": "file", "file": {"filename": "blood_test.pdf",
"file_data": f"data:application/pdf;base64,{pdf}"}},
]}],
extra_body={"language": "pl"},
timeout=600,
)
print(response.choices[0].message.content)
Dane wejściowe
- PDF: jeden wynik na żądanie, do 20 MB, jako część treści
file(data URL base64 lub URL https). - Obrazy: do 10 stron w formacie PNG, JPEG lub WebP jako części
image_url. Nie łącz PDF z obrazami. - Język: ustaw
languagena jeden ze 100 obsługiwanych kodów (domyślnieen). - JSON: ustaw
response_formatna{"type": "json_object"}, aby otrzymać ustrukturyzowany raport zamiast Markdown.
Dane wyjściowe
Odpowiedź to raport w Markdown (lub JSON) od Kantesti AI, zakończony zastrzeżeniem medycznym. Wyniki mają charakter wyłącznie informacyjny i nie zastępują porady lekarza.
Ceny i prywatność
- Stała cena za żądanie, podana na stronie modelu w OpenRouter.
- Zero przechowywania danych: przesłane pliki są usuwane po zakończeniu żądania i żaden prompt, plik ani wynik nie jest przechowywany.
- Twoje dane nigdy nie są używane do trenowania.
Czas odpowiedzi
Raport zajmuje 1–4 minuty: potok odczytuje, sprawdza i interpretuje każdy wiersz. Użyj "stream": true; połączenie pozostaje otwarte dzięki wiadomościom keep-alive do momentu nadejścia raportu. Bez streamingu ustaw limit czasu klienta na co najmniej 10 minut.
Bezpośrednie API
Potrzebujesz trendów, porównań, planów żywieniowych, DNA lub zdrowia rodzinnego? Są dostępne przez REST API Kantesti.