API Kantesti w OpenRouter

Ostatnia aktualizacja:

Korzystaj z Kantesti AI przez zgodne z OpenAI API chat completions OpenRoutera, z tym samym kluczem OpenRouter, którego używasz dla innych modeli.

Status

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 modeluCo zwraca
kantesti/blood-test-v12Każ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-extractKaż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 language na jeden ze 100 obsługiwanych kodów (domyślnie en).
  • JSON: ustaw response_format na {"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.