LiteLLM: erinevus redaktsioonide vahel

Allikas: Imre kasutab arvutit
Mine navigeerimisribaleMine otsikasti
 
(ei näidata sama kasutaja 6 vahepealset redaktsiooni)
15. rida: 15. rida:
 
* chat/app liides (https://claude.ai/, https://gemini.google.com/ jt)
 
* chat/app liides (https://claude.ai/, https://gemini.google.com/ jt)
 
* agent (Claude Code, Gemini CLI jt)
 
* agent (Claude Code, Gemini CLI jt)
  +
* api liides
   
 
[[Fail:20260714-litellm-01.png|550px]]
 
[[Fail:20260714-litellm-01.png|550px]]
76. rida: 77. rida:
   
 
[[Fail:20260713-openwebui-user-01.png|900px]]
 
[[Fail:20260713-openwebui-user-01.png|900px]]
  +
  +
===llm-client - llm-server===
  +
  +
llm-client ja llm-server vahelise suhtlemise jälgimine
  +
  +
<pre>
  +
root@dh-ubuntu-2604-litellm-01:~# tcpdump -s 0 -w ccd-20260727-03.pcap -ni ens18 port 4000
  +
</pre>
  +
  +
kus
  +
  +
* -s 0 - et võrgus liikuvad paketid täies mahus ära salvestuksid
  +
  +
ning edasi wireshark peal paistab
  +
  +
[[Fail:20260728-litellm-01.png|1100px]]
  +
  +
kus
  +
  +
* ühele llm-client chat pöördumisele vastab üks tcp ühendus, millel on üks-kaks http päringut
  +
* http ühenduse sees liiguvad andmed json vormingus
  +
* liiklusele vastav tekst salvestatakse faili ccd-20260727-03-tmp.txt
  +
* failist ccd-20260727-03-tmp.txt salvestatakse omakorda eraldi faili sinise noolega tähistatud rida algusega {"model": ...
  +
* igal järgmise chat küsimuse esitamisel saadab klient serverile kogu vestluse ajaloo (see on see nö 250k token context piir vms)
  +
  +
Klient-server suhtlevad tooling olukorras selliselt
  +
  +
* klient saadab serverile pöördumise 'please create file named filee-01.txt into workspace'
  +
* klient paneb iga pöördumisega kaasa kogu oma nö tööriistakomplekti (nimekirja + kasutusõpetuse st mis argumentidega jms tool-funktsioon töötab)
  +
* server mõtleb ja vastab kliendile, millist tööriista ta kasutada soovitab (tool_use ...)
  +
* klient otsustab, mis ta vastusega teeb (nt küsib kasutajalt veel üle, et kas käivitada)
  +
* mingis mõttes on sellise asjakorralduse puhul kliendist saanud server kusjuures dünaamiliselt tutvustab käigult llm-klient llm-serverile oma nö api liidest)
  +
  +
See on fragment nö api liidese kohta käivast osast
  +
  +
<pre>
  +
imreoolberg@Imres-MacBook-Air ~ % jq '.tools[].name' ccd-20260727-03-tmp.json | nl
  +
1 "Agent"
  +
2 "AskUserQuestion"
  +
3 "Bash"
  +
4 "CronCreate"
  +
5 "CronDelete"
  +
6 "CronList"
  +
7 "DesignSync"
  +
8 "Edit"
  +
9 "EnterPlanMode"
  +
10 "EnterWorktree"
  +
11 "ExitPlanMode"
  +
12 "ExitWorktree"
  +
13 "Monitor"
  +
14 "NotebookEdit"
  +
15 "PushNotification"
  +
16 "Read"
  +
17 "ReportFindings"
  +
18 "ScheduleWakeup"
  +
19 "SendMessage"
  +
20 "Skill"
  +
21 "TaskCreate"
  +
22 "TaskGet"
  +
23 "TaskList"
  +
24 "TaskOutput"
  +
25 "TaskStop"
  +
26 "TaskUpdate"
  +
27 "WebFetch"
  +
28 "WebSearch"
  +
29 "Workflow"
  +
30 "Write"
  +
</pre>
  +
  +
ning
  +
  +
<pre>
  +
imreoolberg@Imres-MacBook-Air ~ % jq '.tools[] | {name, description: (.description[0:80])}' ccd-20260727-03-tmp.json | head -n 12
  +
{
  +
"name": "Agent",
  +
"description": "Launch a new agent to handle complex, multi-step tasks. Each agent type has spec"
  +
}
  +
{
  +
"name": "AskUserQuestion",
  +
"description": "Use this tool only when you are blocked on a decision that is genuinely the user"
  +
}
  +
{
  +
"name": "Bash",
  +
"description": "Executes a bash command and returns its output.\n\n- Working directory persists be"
  +
}
  +
</pre>
  +
  +
Kusjuures sarnast tööriistakasti ja mida sealt kasutati näeb ka litellm juurest
  +
  +
TODO
   
 
===Kasulikud lisamaterjalid===
 
===Kasulikud lisamaterjalid===

Viimane redaktsioon: 28. juuli 2026, kell 09:17

Sissejuhatus

TODO

https://www.litellm.ai/ ...

Tööpõhimõte

TODO

Võib olla võiks AI teemat kujutada sellistes dimensioonides

20260714-litellm-01.png

kus

  • TODO

Paigaldamine ja seadistamine

Paigaldamiseks sobib nt selline docker compose

TODO

Tulemusena käivitatakse selline komplekt konteinereid

root@dh-ubuntu-2604-litellm-01:/srv/litellm/dc# docker compose up -d
[+] up 85/85
 ✔ Image redis:7-alpine                      Pulled    31.8s
 ✔ Image ghcr.io/berriai/litellm:main-latest Pulled    49.6s
 ✔ Image nginx:alpine                        Pulled    33.3s
 ✔ Image postgres:16-alpine                  Pulled    36.6s
 ✔ Image ghcr.io/open-webui/open-webui:main  Pulled    69.0s
 ✔ Network genai-internal-network            Created    0.2s
 ✔ Volume p_litellm_redis_data               Created    0.1s
 ✔ Volume p_litellm_litellm_data             Created    0.1s
 ✔ Volume p_litellm_openwebui_data           Created    0.1s
 ✔ Volume p_litellm_postgres_data            Created    0.1s
 ✔ Container genai-postgres                  Healthy   13.1s
 ✔ Container genai-redis                     Healthy   12.6s
 ✔ Container genai-litellm-proxy             Started   11.8s
 ✔ Container genai-openwebui                 Started   11.7s
 ✔ Container genai-nginx-ingress             Started   11.1s
root@dh-ubuntu-2604-litellm-01:/srv/litellm/dc#

kus

  • TODO

LiteLLM

LiteLLM seadistamiseks veebipõhiselt

20260713-litellm-01.png

kus

  • TODO

Open WebUI

Admin liides

20260713-openwebui-admin-01.png

Kasutajale mõeldud liides

20260713-openwebui-user-01.png

llm-client - llm-server

llm-client ja llm-server vahelise suhtlemise jälgimine

root@dh-ubuntu-2604-litellm-01:~# tcpdump -s 0 -w ccd-20260727-03.pcap -ni ens18 port 4000

kus

  • -s 0 - et võrgus liikuvad paketid täies mahus ära salvestuksid

ning edasi wireshark peal paistab

20260728-litellm-01.png

kus

  • ühele llm-client chat pöördumisele vastab üks tcp ühendus, millel on üks-kaks http päringut
  • http ühenduse sees liiguvad andmed json vormingus
  • liiklusele vastav tekst salvestatakse faili ccd-20260727-03-tmp.txt
  • failist ccd-20260727-03-tmp.txt salvestatakse omakorda eraldi faili sinise noolega tähistatud rida algusega {"model": ...
  • igal järgmise chat küsimuse esitamisel saadab klient serverile kogu vestluse ajaloo (see on see nö 250k token context piir vms)

Klient-server suhtlevad tooling olukorras selliselt

  • klient saadab serverile pöördumise 'please create file named filee-01.txt into workspace'
  • klient paneb iga pöördumisega kaasa kogu oma nö tööriistakomplekti (nimekirja + kasutusõpetuse st mis argumentidega jms tool-funktsioon töötab)
  • server mõtleb ja vastab kliendile, millist tööriista ta kasutada soovitab (tool_use ...)
  • klient otsustab, mis ta vastusega teeb (nt küsib kasutajalt veel üle, et kas käivitada)
  • mingis mõttes on sellise asjakorralduse puhul kliendist saanud server kusjuures dünaamiliselt tutvustab käigult llm-klient llm-serverile oma nö api liidest)

See on fragment nö api liidese kohta käivast osast

imreoolberg@Imres-MacBook-Air ~ % jq '.tools[].name' ccd-20260727-03-tmp.json | nl
     1	"Agent"
     2	"AskUserQuestion"
     3	"Bash"
     4	"CronCreate"
     5	"CronDelete"
     6	"CronList"
     7	"DesignSync"
     8	"Edit"
     9	"EnterPlanMode"
    10	"EnterWorktree"
    11	"ExitPlanMode"
    12	"ExitWorktree"
    13	"Monitor"
    14	"NotebookEdit"
    15	"PushNotification"
    16	"Read"
    17	"ReportFindings"
    18	"ScheduleWakeup"
    19	"SendMessage"
    20	"Skill"
    21	"TaskCreate"
    22	"TaskGet"
    23	"TaskList"
    24	"TaskOutput"
    25	"TaskStop"
    26	"TaskUpdate"
    27	"WebFetch"
    28	"WebSearch"
    29	"Workflow"
    30	"Write"

ning

imreoolberg@Imres-MacBook-Air ~ % jq '.tools[] | {name, description: (.description[0:80])}' ccd-20260727-03-tmp.json | head -n 12
{
  "name": "Agent",
  "description": "Launch a new agent to handle complex, multi-step tasks. Each agent type has spec"
}
{
  "name": "AskUserQuestion",
  "description": "Use this tool only when you are blocked on a decision that is genuinely the user"
}
{
  "name": "Bash",
  "description": "Executes a bash command and returns its output.\n\n- Working directory persists be"
}

Kusjuures sarnast tööriistakasti ja mida sealt kasutati näeb ka litellm juurest

TODO

Kasulikud lisamaterjalid

  • TODO