LiteLLM: erinevus redaktsioonide vahel
Allikas: Imre kasutab arvutit
Mine navigeerimisribaleMine otsikasti
Resümee puudub |
|||
| (ei näidata sama kasutaja 16 vahepealset redaktsiooni) | |||
| 9. rida: | 9. rida: | ||
TODO |
TODO |
||
| + | Võib olla võiks AI teemat kujutada sellistes dimensioonides |
||
| − | ===Paigaldamine=== |
||
| + | |||
| + | * corporate nähtus mudeli taga (Anthropic, Google jt) |
||
| + | * mudel (sonnet, gemini jt) |
||
| + | * chat/app liides (https://claude.ai/, https://gemini.google.com/ jt) |
||
| + | * agent (Claude Code, Gemini CLI jt) |
||
| + | * api liides |
||
| + | |||
| + | [[Fail:20260714-litellm-01.png|550px]] |
||
| + | |||
| + | kus |
||
| + | |||
| + | * TODO |
||
| + | |||
| + | ===Paigaldamine ja seadistamine=== |
||
| + | |||
| + | Paigaldamiseks sobib nt selline docker compose |
||
| + | |||
| + | <pre> |
||
| + | TODO |
||
| + | </pre> |
||
| + | |||
| + | Tulemusena käivitatakse selline komplekt konteinereid |
||
| + | |||
| + | <pre> |
||
| + | 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# |
||
| + | </pre> |
||
| + | |||
| + | kus |
||
| + | |||
| + | * TODO |
||
| + | |||
| + | ====LiteLLM==== |
||
| + | |||
| + | LiteLLM seadistamiseks veebipõhiselt |
||
| + | |||
| + | [[Fail:20260713-litellm-01.png|900px]] |
||
| + | |||
| + | kus |
||
| + | |||
| + | * TODO |
||
| + | |||
| + | ====Open WebUI==== |
||
| + | |||
| + | Admin liides |
||
| + | |||
| + | [[Fail:20260713-openwebui-admin-01.png|900px]] |
||
| + | |||
| + | Kasutajale mõeldud liides |
||
| + | |||
| + | [[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 |
TODO |
||
Viimane redaktsioon: 28. juuli 2026, kell 09:17
Sissejuhatus
TODO
Tööpõhimõte
TODO
Võib olla võiks AI teemat kujutada sellistes dimensioonides
- corporate nähtus mudeli taga (Anthropic, Google jt)
- mudel (sonnet, gemini jt)
- chat/app liides (https://claude.ai/, https://gemini.google.com/ jt)
- agent (Claude Code, Gemini CLI jt)
- api liides
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
kus
- TODO
Open WebUI
Admin liides
Kasutajale mõeldud liides
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
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