Files
timmy-config/wizards/allegro/provider-spike/__pycache__/ollama_provider.cpython-312.pyc

42 lines
4.8 KiB
Plaintext
Raw Normal View History

2026-04-01 22:00:09 +00:00
<EFBFBD>
<17><>i<EFBFBD> <00><00><><00>dZddlZddlZddlmZmZmZmZddlZddl m
Z
m Z m Z m Z mZmZGd<05>de
<EFBFBD>Zej"de<10>y)z@
Ollama Provider Implementation
For local/offline LLM inference
<EFBFBD>N)<04>Dict<63>List<73>Any<6E>Optional)<06>Provider<65>Message<67> MessageRole<6C>ProviderResponse<73>ToolCall<6C>ProviderFactoryc <00><><00>eZdZdZddedefd<04>Zedefd<06><04>Zedefd<07><04>Z ede
fd<08><04>Z d e e de efd
<EFBFBD>Z dd e e d ee ed edefd<0E>Zy )<11>OllamaProviderze
Ollama provider for local model inference.
Supports tool calling via structured output.
<20>host<73>modelc<00>d<00>|xs tjjdd<02>|_||_y)N<> OLLAMA_HOST<53>http://localhost:11434)<05>os<6F>environ<6F>getrr)<03>selfrrs <20>7/root/wizards/allegro/provider-spike/ollama_provider.py<70>__init__zOllamaProvider.__init__s%<00><00><18>S<>B<EFBFBD>J<EFBFBD>J<EFBFBD>N<EFBFBD>N<EFBFBD>=<3D>:R<>S<><04> <09><1A><04>
<EFBFBD><00>returnc<00> <00>d|j<00><00>S)N<>ollama-)r<00>rs r<00>namezOllamaProvider.names<00><00><18><14><1A><1A> <0C>%<25>%rc<00><00>y)Ni<00><00>rs r<00> max_contextzOllamaProvider.max_context<00><00><00>rc<00><00>y)NFr!rs r<00>supports_toolszOllamaProvider.supports_tools!r#r<00>messagesc<00>|<00>g}|D]4}|j|jj|jd<01><02><00>6|S)zConvert to Ollama format.)<02>role<6C>content)<04>appendr(<00>valuer))rr&<00> converted<65>msgs r<00>_convert_messagesz OllamaProvider._convert_messages&sC<00><00><16> <09><1B> <0F>C<EFBFBD> <15> <1C> <1C><1B><08><08><0E><0E><1E>;<3B>;<3B><0E> <0F> <0F>
<19>rN<>tools<6C> temperaturec <00><00>K<00>|j|j|<01>dd|id<03>}|r|jr||d<tj<00>4<00>d{<00><02><03>}|j |j <00>d<06>|<04><07>4<00>d{<00><03><03>}|j<00><00>d{<00><04><03>}|d}g} |jd d
<EFBFBD>}
|
j<00>jd <0B>r}d |
j<00>vrk tj|
<EFBFBD>} d | vrQ| jtd t|
<EFBFBD>dz<00><00>| d | jdi<00><00><10><00>| jdd
<EFBFBD>}
t#|
| |jdd<13>|jdd<13>d<15><02><16>cddd<05><00>d{<00><03><03>cddd<05><00>d{<00><02><03>S7<00><01>N7<00><01>(7<00><01>#tj $rY<00>qwxYw7<00>87<00>)#1<00>d{<00><04><03>7swYnxYwddd<05><00>d{<00><02><03>7y#1<00>d{<00><03><03>7swYyxYw<01>w)zSend message to Ollama API.Fr0)rr&<00>stream<61>optionsr/Nz /api/chat)<01>json<6F>messager)<00><00>{<7B>toolri'<00> arguments)<03>idrr9<00> reasoning<6E>prompt_eval_countr<00>
eval_count)<02> prompt_tokens<6E>completion_tokens)r)<00>
tool_calls<EFBFBD>usage)rr.r%<00>aiohttp<74> ClientSession<6F>postrr4r<00>strip<69>
startswith<EFBFBD>lower<65>loadsr*r <00>hash<73>JSONDecodeErrorr
) rr&r/r0<00>payload<61>session<6F>resp<73>datar5r@r)<00>parseds r<00> send_messagezOllamaProvider.send_message0s<><00><00><><00><1A>Z<EFBFBD>Z<EFBFBD><1C>.<2E>.<2E>x<EFBFBD>8<><1B><1D>{<7B><0E> 
<EFBFBD><07> <11>T<EFBFBD>(<28>(<28>$<24>G<EFBFBD>G<EFBFBD> <1C><1A>(<28>(<28>*<2A>" <12>" <12>g<EFBFBD><1E>|<7C>|<7C><17>9<EFBFBD>9<EFBFBD>+<2B>Y<EFBFBD>'<27><1C>$<24><0E>! <12>! <12><16>!<21>Y<EFBFBD>Y<EFBFBD>[<5B>(<28><04><1E>y<EFBFBD>/<2F><07> <20>
<EFBFBD>!<21>+<2B>+<2B>i<EFBFBD><12>4<><07><1B>=<3D>=<3D>?<3F>-<2D>-<2D>c<EFBFBD>2<>v<EFBFBD><17><1D><1D><1F>7P<37>
<1D>!%<25><1A><1A>G<EFBFBD>!4<><06>!<21>V<EFBFBD>+<2B>&<26>-<2D>-<2D>h<EFBFBD>%,<2C>T<EFBFBD>'<27>]<5D>U<EFBFBD>-B<>,C<>#D<>%+<2B>F<EFBFBD>^<5E>*0<>*<2A>*<2A>[<5B>"<22>*E<>/<1E><1F>
'-<2D>j<EFBFBD>j<EFBFBD><1B>b<EFBFBD>&A<>G<EFBFBD>(<28>#<23>)<29>)-<2D><18><18>2E<32>q<EFBFBD>)I<>-1<>X<EFBFBD>X<EFBFBD>l<EFBFBD>A<EFBFBD>-F<><16><12>5! <12>! <12>! <12>" <12>" <12>" <12><>! <12><>)<29><>& <20>/<2F>/<2F><1D><1C><1D><>/! <12><>" <12><>! <12>! <12>! <12><>" <12>" <12>" <12>" <12>" <12>s<EFBFBD><00>AH<01>F<06>H<01>%G+<03>9F!<08>:G+<03>=G<05>F$<08>AG<05>!A*F'<04> 0G<05>; G+<03>G<08>G+<03> H<01>G<06>H<01>!G+<03>$G<05>'F=<07>:G<05><F=<07>=G<05>G+<03>H<01>G <09>
G <0E> G <09>G+<03> H<01>$G'<04>%H<01>+G=<07>1G4 <0C>2G=<07>9H)rzqwen2.5-coder:14b)Ngffffff<66>?)<14>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__doc__<5F>strr<00>propertyr<00>intr"<00>boolr%rrrr.r<00>floatr
rPr!rrrrs<><00><00><08>
<1B>S<EFBFBD><1B>C<EFBFBD><1B><0E>&<26>c<EFBFBD>&<26><0E>&<26><0E><15>S<EFBFBD><15><0E><15><0E><15><04><15><0E><15><19>$<24>w<EFBFBD>-<2D><19>D<EFBFBD><14>J<EFBFBD><19>'+<2B> <20> 7<12><16>w<EFBFBD>-<2D>7<12><18><04>T<EFBFBD>
<EFBFBD>#<23>7<12><1B> 7<12>
<1A> 7rr<00>ollama)rTrr4<00>typingrrrrrB<00>providerrrr r
r r r<00>registerr!rr<00><module>r^sD<00><01><04>

<EFBFBD> <0B>,<2C>,<2C><0E>`<60>`<60>Y<12>X<EFBFBD>Y<12>z<19><0F><18><18><18>><3E>2r