Mis on Reka API ja millal seda kasutada?
Reka API on kasutuspõhine arendajaplatvorm Reka mudelite ning Reka Gateway kaudu valitud mudelite kasutamiseks. Peamine liides on OpenAI-ga ühilduv Chat Completions API aadressil https://api.reka.ai/v1. See võtab vastu sõnumeid ja tagastab assistendi vastused tuttavas vormingus, mistõttu on see praktiline valik arendajatele, kes kasutavad juba OpenAI stiilis klienditeeke.
Chat API on mõeldud tekstivestlusteks, multimodaalseteks viipadeks, voogedastusliidesteks ja rakenduse juhitavaks tööriistade kasutamiseks. Toetatud multimodaalsed sisendid hõlmavad olenevalt mudelist ja lõpp-punktist teksti, pilte, lühivideoid ja heli. Reka pakub eraldi teenuseid ka kasutusjuhtudeks, kus ühest vestluspäringust ei piisa:
- Chat API: Üldine teksti- ja multimodaalne inferents, voogedastus ning tööriistad.
- Reka Gateway: Ühine liides Reka mudelite ja valitud täiendavate mudelite kasutamiseks.
- Reka Research: Veebi toel tehtav uurimine ja analüüs koos tööriistategevuste, allikate metaandmete, voogedastuse ja dokumenteeritud JSON-skeemi väljundiga.
- Reka Vision: Püsiv video- ja piltide üleslaadimine, indekseerimine, semantiline otsing, videoküsimustele vastamine, sildistamine ja esiletõstetud videoklippide loomine.
Kasuta Chati, kui vajad tavalist mudelipäringut või multimodaalset analüüsi. Kasuta Visionit, kui vajad otsitavat ja püsivat meediakogu. Kasuta Researchi, kui töövoo keskmes on veebiotsing, ühendatud failid, uurimisetapid või rangelt struktureeritud vastused.
Kuidas saada juurdepääs ja API-võti?
Loo Reka Platformil konto ja genereeri võti API Keys'i jaotises. API kasutamine on tasuline vastavalt kasutusele, seega peab kontol olema päringute edukaks töötlemiseks piisavalt krediiti. Kui saldo jõuab nulli, võivad päringud ebaõnnestuda saldo puudumise veaga.
Chat API puhul kasutab praegune dokumentatsioon päist X-Api-Key. Mõnes uuemas Gateway näites kasutatakse Bearer-loa autentimist, seega kontrolli täpseid autentimisjuhiseid vastavalt kasutatavale tootele ja konto seadistusele. Ära avalda võtit brauseri JavaScriptis, mobiilirakenduses, avalikus koodirepositooriumis ega kliendipoolses HTML-is. Saada päringud serveri või muu usaldusväärse keskkonna kaudu.
Enne tootmisintegratsiooni loomist kontrolli valitud teenuse dokumentatsioonist nelja väärtust: baasaadress, autentimispäis, mudeli või lõpp-punkti tunnus ning kehtivad hinnastamis- ja säilitamisreeglid. Chat, Research, Gateway ja Vision on seotud tooted, kuid need ei ole omavahel asendatavad lõpp-punktid.
Millise API ja mudeli peaksid valima?
Esimese integratsiooni puhul alusta Chat API-st ja mõnest üldotstarbelisest saadaolevast mudelist, näiteks reka-flash. Avalikult dokumenteeritud mudelitunnused hõlmavad reka-flash ja reka-edge; Gateway kataloogis on loetletud ka näiteks reka-flash-3 ja reka-edge-2603. Saadaolev kataloog võib sõltuda kontost ja muutuda, seega küsi või vaata alati kehtivat mudelidokumentatsiooni, selle asemel et eeldada püsivalt iga tunnuse kättesaadavust.
| Nõue | Soovitatav liides | Miks |
|---|---|---|
| Tavaline vestlus või multimodaalne inferents | Chat API | OpenAI-ga ühilduvad sõnumid ja vestluse lõpetamised |
| Veebi toel tehtav uurimine ja analüüs | Reka Research | Uurimistööriistad, allikate metaandmed, voogedastus ja struktureeritud väljund |
| Meediakogu läbiv otsing | Reka Vision | Üleslaadimine, indekseerimine, semantiline otsing, videoküsimused ja metaandmete töövood |
| Mitme saadaoleva mudelipakkuja kasutamine ühe liidese kaudu | Reka Gateway | Ühine lüüsijuurdepääs Reka ja valitud täiendavatele mudelitele |
Esitatud dokumentatsioonis ei ole avalikult dokumenteeritud püsivat Assistants API-t ega teenusepakkuja hallatavat lõimede ja käivituste käituskeskkonda. Kui rakendus vajab püsivaid vestlusi, tööriistade olekut või failide omandiõiguse haldamist, hoia seda olekut enda andmebaasis ja rakendusekihis.
Kuidas teha esimene Reka API päring?
Lihtsaim praegune lahendus kasutab OpenAI Pythoni paketti koos Reka baasaadressi ja API-võtmega. Paigalda pakett ja määra võti keskkonnas:
pip install openai
export REKA_API_KEY="your_api_key"Seejärel saada chat-completions-päring:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.reka.ai/v1",
api_key=os.environ["REKA_API_KEY"],
)
response = client.chat.completions.create(
model="reka-flash",
messages=[
{"role": "system", "content": "You are a concise technical assistant."},
{"role": "user", "content": "Explain HTTP streaming in two sentences."},
],
)
print(response.choices[0].message.content)REST-päringu samaväärne variant kasutab POST /v1/chat/completions:
curl --fail-with-body -sS https://api.reka.ai/v1/chat/completions
-H "X-Api-Key: ${REKA_API_KEY}"
-H "Content-Type: application/json"
-d '{
"model": "reka-flash",
"messages": [
{"role": "user", "content": "Explain HTTP streaming in two sentences."}
],
"stream": false
}'JavaScriptis on praegune OpenAI SDK muster sarnane:
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.reka.ai/v1",
apiKey: process.env.REKA_API_KEY,
});
const response = await client.chat.completions.create({
model: "reka-flash",
messages: [
{ role: "user", content: "Explain multi-turn chat in two sentences." },
],
});
console.log(response.choices[0].message.content);Kuidas vastust mõista?
Edukas Chat API vastus järgib tuttavat chat-completions-struktuuri. Genereeritud assistendi sõnum on Pythoni SDK-s tavaliselt saadaval asukohas response.choices[0].message.content või JavaScriptis vastava choices[0].message.content atribuudi kaudu.
Ära eelda, et iga vastus sisaldab tavalist teksti. Päring võib lõpliku vastuse asemel tagastada tööriistakutsed ning voogedastatud vastused saabuvad järkjärguliste osadena. Rakendus peaks kontrollima vastuse tüüpi ja käsitlema asjakohaselt tühja või tööriistadele suunatud sisu. Tootmiskoodis kontrolli ka HTTP olekukoode ja veaobjekte, mitte ära prindi ainult vastuse keha.
Kuidas Reka API hinnastamine toimib?
Reka Chat kasutab kasutuspõhist hinnastamist, mis põhineb peamiselt sisend- ja väljundmärgendite kasutusel. Esitatud uuringus avaldatud Chati hinnad on järgmised:
| Mudel | Sisend | Väljund |
|---|---|---|
| Reka Edge | $0.10 miljoni märgendi kohta | $0.10 miljoni märgendi kohta |
| Reka Flash | $0.80 miljoni märgendi kohta | $2.00 miljoni märgendi kohta |
| Reka Core | $2.00 miljoni märgendi kohta | $6.00 miljoni märgendi kohta |
Piltide, videote ja heli sisendid võivad kaasa tuua lisatasusid. Reka Gateway kuvab mudelipõhised hinnad ja märgib, et platvormitasu ega juurdehindlust ei ole. Hinnad ja mudelite saadavus võivad muutuda, seega peaksid tootmissüsteemid vanade eelduste kõvakodeerimise asemel kasutama kehtivat kataloogi ja hinnastamislehti.
Reka Vision kasutab teistsuguseid ühikuid. Avaldatud arendajahinnad hõlmavad video indekseerimist hinnaga $0.05 sisendvideo minuti kohta, piltide üleslaadimist hinnaga $10 miljoni pildi kohta, pildiotsingut hinnaga $0.003 otsingu kohta ja videoklippide loomist hinnaga $0.04 sisendvideo minuti kohta; 1080p-väljundi loomise eest lisandub eraldi tasu. Neid Visioni tasusid ei tohiks kulude hindamisel segada Chati märgendihindadega.
Millistele võimalustele arendajad juurde pääsevad?
Multimodaalne sisend
Chat-päringud võivad sisaldada teksti ning toetatud pildi-, video- või helisisendeid. Näiteks saab pildi edastada image_url sisuüksusena:
const response = await client.chat.completions.create({
model: "reka-flash",
messages: [
{
role: "user",
content: [
{
type: "image_url",
image_url: {
url: "https://v0.docs.reka.ai/_images/000000245576.jpg",
},
},
{ type: "text", text: "Describe the main subject of this image." },
],
},
],
});
console.log(response.choices[0].message.content);Sisenditugi sõltub mudelist ja lõpp-punktist. Suurte meediakogude puhul kasuta Visioni üleslaadimis- ja indekseerimistöövoogu, selle asemel et lisada samu faile korduvalt eraldi Chat-päringutele.
Vastuste voogedastus
Määra stream väärtuseks true, et saada genereeritud teksti järk-järgult. Voogedastus on interaktiivsete liideste puhul kasulik, sest kasutaja näeb väljundit juba mudeli genereerimise ajal:
const stream = await client.chat.completions.create({
model: "reka-flash",
stream: true,
messages: [
{ role: "user", content: "Write a short explanation of API streaming." },
],
});
for await (const chunk of stream) {
const text = chunk.choices[0]?.delta?.content;
if (text) process.stdout.write(text);
}
process.stdout.write("n");Voogedastus muudab vastuste tarbimise viisi, kuid ei kaota vajadust ajalõppude, vigade käsitlemise ega kasutuse jälgimise järele.
Tööriistade ja funktsioonide kutsumine
Chat toetab tööriistade määratlusi ja tööriistavaliku juhtimist. Tööriista määratlus kirjeldab funktsiooni, mida sinu rakendus saab käivitada. Mudel võib seda funktsiooni taotleda, kuid toimingu peab tegema sinu rakendus, mitte Reka, ning tagastama tulemuse vestluse järgmises etapis.
const response = await client.chat.completions.create({
model: "reka-flash",
messages: [
{ role: "user", content: "What is the weather in Boston?" },
],
tools: [
{
type: "function",
function: {
name: "get_weather",
description: "Get the current weather for a city",
parameters: {
type: "object",
properties: { city: { type: "string" } },
required: ["city"],
},
},
},
],
tool_choice: "auto",
});
console.log(response.choices[0].message.tool_calls);Kontrolli tööriista argumente enne käivitamist ning rakenda enda autoriseerimist, päringumäärasid ja turvakontrolle. Tööriistade kutsumine on rakenduse integratsioonimuster, mitte tõend selle kohta, et Rekal oleks automaatselt juurdepääs sinu süsteemidele.
Failid ja meedia
Failide ja meedia töötlemine on võimalik multimodaalsete Chat-sisendite ning eraldi Visioni teenuse kaudu. Vision toetab videote ja piltide kohalikke multipart-üleslaadimisi või allika URL-e, millele järgnevad indekseerimine ja sellised toimingud nagu otsing, küsimustele vastamine, sildistamine ja klippide loomine.
Reka dokumenteerib ka peenhäälestust teenusena, mille puhul osaleb nende insenerimeeskond. Esitatud dokumentatsioon ei kinnita iseteeninduslikku Chati peenhäälestuse lõpp-punkti, seega ära kavanda integratsiooni selle ümber ilma kehtivat kommertslepingut kinnitamata.
Struktureeritud väljund
Reka Research dokumenteerib objekti response_format, mis kasutab JSON-skeemi. See on dokumenteeritud ja sobiv lahendus, kui rakendus vajab uurimispäringust rangelt masinloetavat väljundit. Chati ülddokumentatsioon käsitleb samuti assistendi väljundi suunamist viipade abil, kuid seda ei tohiks pidada range skeemi jõustamisega samaväärseks, välja arvatud juhul, kui lõpp-punkt seda sõnaselgelt toetab.
Millal kasutada Researchi või Visionit?
Reka Research kasutab veebiotsingu ja analüüsi töövoogude jaoks spetsiaalset reka-flash-research võimekust. See võib kuvada tööriistadega seotud arutluskäigu etappe, tagastada allikate metaandmeid, toetada voogedastust ja töötada toetatud töövoogudes ühendatud privaatsete failidega. See sobib tavalisest Chatist paremini siis, kui rakendus vajab uurimisprotsessi, mitte üksikut mudelivastust.
Reka Vision on mõeldud püsivateks meediatöövoogudeks. Tüüpiline töövoog on järgmine:
- Laadi pilt või video Visioni teenusesse üles.
- Indekseeri meedia hilisemaks leidmiseks.
- Otsi indekseeritud kogust või esita video kohta küsimusi.
- Esita päring siltide, kokkuvõtete või loodud esiletõstetud klippide saamiseks.
Vision pakub ka voogedastusega küsimustele vastamist ja MCP-serverit ühilduvatele agentklientidele. Selle baasaadress on https://vision-agent.api.reka.ai, mis erineb Chati baasaadressist.
SDK-d, dokumentatsioon ja mänguväljad
Lihtsaim SDK-lahendus on kasutada ametlikku OpenAI Pythoni või JavaScripti paketti koos Reka ühilduva baasaadressiga. Ametlikud näited hõlmavad ka Go-d, Java-t ja REST-päringuid. Esitatud uuringus ei õnnestunud spetsiaalset Reka SDK-d kinnitada.
Dokumentatsioon on saadaval aadressil docs.reka.ai ning arendaja mänguvälja või Gateway keskkonna leiab aadressilt developer.reka.ai. Kasuta konkreetse lõpp-punkti dokumentatsiooni, selle asemel et eeldada, et Chati autentimine, Visioni autentimine, hinnastamine või säilitamisreeglid kehtivad kõikjal ühtemoodi.
Olulised piirangud ja tootmiskasutuse kaalutlused
Üldise Chati päringumäärasid ei ole läbi vaadatud avalikus viitedokumentatsioonis põhjalikult kirjeldatud. Vision dokumenteerib jooksva 24-tunnise võtme kohta järgmised piirangud: 100 pildi üleslaadimist, 100 pildiotsingut, 50 video üleslaadimist, 50 videootsingut ja 10 klipi loomise päringut. Ettevõttekliendid võivad taotleda suuremaid limiite.
Muud tootmiskasutuse kaalutlused:
- Eraldi tooteliidesed: Chatil, Researchil, Gatewayl ja Visionil on erinevad URL-id, autentimistavad, hinnastamisühikud ja toetatud funktsioonid.
- Muutuvad kataloogid: Mudelite tunnused ja saadavus võivad muutuda, seega kinnita need enne juurutamist ning jälgi kättesaamatute mudelite põhjustatud tõrkeid.
- Meedia säilitamine: Üleslaaditud faile võidakse ajutiselt talletada ja need võidakse kustutada kindla ajavahemiku, näiteks 24 tunni jooksul, olenevalt funktsioonist. Visioni dokumentatsiooni kohaselt kustutatakse indekseeritud videote salvestised automaatselt 30 päeva pärast, kuid ettevõttekokkulepped võivad erineda.
- Treeninguvalikud: Kehtiva privaatsuspoliitika kohaselt võidakse tasuta kasutuse, sealhulgas reklaam-API krediitide kaudu tehtud suhtlusi kasutada mudelite treenimiseks ja täiustamiseks, välja arvatud Google Drive'ist pärinev sisu. Tasulised kasutajad saavad konto seadetes või Rekaga ühendust võttes valida, kas Reka võib kasutada viipasid ja väljundeid täiustamiseks.
- Töökindlus: Rakenda ajutiste tõrgete korral korduskatseid, selgeid ajalõppe, saldo jälgimist, saladusi välistavat päringute logimist ning päringumäära ja ebapiisava saldo vigade käsitlemist.
- Rakenduse olek: Hoia vestlusajalugu, kasutajaõigusi, tööriistade tulemusi ja püsivaid failide metaandmeid enda rakenduses, välja arvatud juhul, kui eraldi dokumenteeritud teenus seda olekut pakub.
Arendajatele mõeldud eelised ja piirangud
Reka API on eriti atraktiivne siis, kui olulised on OpenAI-ga ühilduv integratsioon, multimodaalne sisend, video mõistmine või tõhus juurdepääs mudelitele. Sama platvorm hõlmab tavalist vestlust, uurimistööriistu ja meedia indekseerimist ning valitud mudeleid saab toetatud juhtudel kasutada lüüsi kaudu või kohapeal.
Peamised piirangud tulenevad mitme API-liidese tekitatud keerukusest ja üldise Chati päringumäärade kohta avalikult kättesaadava teabe puudulikkusest. Tarbija- ja arendajatoodete piirid võivad muutuda, mudelite saadavus ei ole kõigil kontodel tagatud ning tundlike töövoogude puhul tuleb säilitamis- ja treeningutingimused hoolikalt üle vaadata. Meeskonnad, kes otsivad küpset teenusepakkuja hallatavat assistendi käituskeskkonda, laia loomulikku kliendiraamistikku või täielikult ühtset autentimis- ja arveldusmudelit, võivad pidada seda platvormi vähem mugavaks.
Praktiline alustamise tee
- Loo Reka Platformi konto ja genereeri API-võti.
- Testi
POST https://api.reka.ai/v1/chat/completionsOpenAI Pythoni või JavaScripti SDK-ga. - Kasuta esimeses prototüübis saadaolevat üldotstarbelist mudelit, näiteks
reka-flash. - Lisa voogedastus, kui rakendusel on interaktiivne kasutajaliides.
- Lisa tööriistad alles pärast seda, kui oled rakenduses määratlenud valideerimise, autoriseerimise ja tõrgete käsitlemise.
- Kasuta Researchi veebi toel tehtava analüüsi või dokumenteeritud struktureeritud väljundi jaoks.
- Kasuta Visionit püsivaks video- või pildiindekseerimiseks, otsinguks, videoküsimustele vastamiseks, sildistamiseks või klippide loomiseks.
- Enne tootmiskasutust kontrolli konkreetse lõpp-punkti puhul kehtivaid mudelitunnuseid, hindu, limiite, säilitamisreegleid ja andmekasutuse seadeid.
