AnythingLLM API.md 3.4 KB

AnythingLLM-il on REST API, millega saad automatiseerida kõike – artiklite üleslaadimist, küsimuste esitamist, tööruumide haldamist. API võtit on sul tegelikult kaks võimalust kasutada, aga kõige puhtam on luua eraldi API key.


1. API võtme hankimine

  • Ava oma AnythingLLM liides (http://100.87.1.24:3002).
  • Mine Settings (hammasratta ikoon) → API Keys.
  • Vajuta Generate New API Key.
  • Kopeeri tekkinud pikk string (näit. sk-1234abcd...). See ongi sinu API key.

Kui sa API võtit ei loo, võid päringutes kasutada ka oma AUTH_TOKEN-i (dwNs55RkiwSEC3TxQG0P), aga API key on turvalisem ja lubab piirata õigusi.


2. Autentimine

Kõigis API päringutes lisa päis:

Authorization: Bearer AYKT87V-TYFMEYX-KG1411R-MYEYQ2Q
Content-Type: application/json

Kui kasutad AUTH_TOKEN-i, siis päis on sama, aga võtme asemel on token.


3. Kõige olulisemad endpoint'id

Allpool on toodud põhilised käsud sinu seadistuse põhjal (pordiks on 3002, kui kasutad compose-failis määratud porti).

a) Tööruumide nimekiri ja info

# Kõik tööruumid
curl -H "Authorization: Bearer AYKT87V-TYFMEYX-KG1411R-MYEYQ2Q" \
     http://100.87.1.24:3002/api/v1/workspaces

# Konkreetse tööruumi detailid (asenda liiklussagedus nimega, nt "liiklussagedus")
curl -H "Authorization: Bearer AYKT87V-TYFMEYX-KG1411R-MYEYQ2Q" \
     http://100.87.1.24:3002/api/v1/workspace/liiklussagedus

b) Dokumendi lisamine (URL või fail)

Tööruumi slug'i leiad eelmisest vastusest.

# Lisa veebileht või PDF URL
curl -X POST \
     -H "Authorization: Bearer AYKT87V-TYFMEYX-KG1411R-MYEYQ2Q" \
     -H "Content-Type: application/json" \
     -d '{"url":"https://arxiv.org/pdf/xxxx.xxxxx.pdf"}' \
     http://100.87.1.24:3002/api/v1/workspace/liiklussagedus/document/upload-url

# Lisa kohalik fail (Markdown või PDF)
curl -X POST \
     -H "Authorization: Bearer AYKT87V-TYFMEYX-KG1411R-MYEYQ2Q" \
     -F "file=@/path/to/artikkel.md" \
     http://100.87.1.24:3002/api/v1/workspace/liiklussagedus/document/upload

c) Küsimuse esitamine (RAG-päring)

curl -X POST \
     -H "Authorization: Bearer AYKT87V-TYFMEYX-KG1411R-MYEYQ2Q" \
     -H "Content-Type: application/json" \
     -d '{"message":"Kokkuvõte liiklussageduse mõõtmismeetoditest", "mode":"chat"}' \
     http://100.87.1.24:3002/api/v1/workspace/liiklussagedus/chat

Vastuses on textResponse ja sources (viited allikatele).

d) Küsimus ilma tööruumita (ainult LLM, ilma RAG-ita)

curl -X POST \
     -H "Authorization: Bearer AYKT87V-TYFMEYX-KG1411R-MYEYQ2Q" \
     -H "Content-Type: application/json" \
     -d '{"message":"What is traffic frequency?", "mode":"chat"}' \
     http://100.87.1.24:3002/api/v1/chat

4. Kiirtest oma seadistusega

Kuna sul on juba AUTH_TOKEN, proovi kohe (asenda WORKSPACE_SLUG oma tööruumi nimega):

curl -X GET \
     -H "Authorization: Bearer dwNs55RkiwSEC3TxQG0P" \
     http://100.87.1.24:3002/api/v1/workspaces

Kui see tagastab JSON-i tööruumide nimekirjaga, on API töökorras.


5. Automatiseerimine Pythoniga

Teadustöö jaoks on mugav kirjutada väike Pythoni skript, mis loeb kataloogist kõik .md failid ja saadab need API kaudu tööruumi. Saan sulle sellise skripti kavandi anda, kui oled API võtme valmis saanud.

Kas loome API võtme ja teeme esimese testpäringu?

Seotud mõisted

[[Qdrant]]