📘

pythonとollamaで初めてローカルLLMを動かしたときに引っかかっていたこと

に公開

LLMを触り始めたばかりのとき、ollamaを使ってローカルのLLMをコードに組み込んでみたいけどなぜかエラーが出て動かない...といった経験をされた方は多いのではないでしょうか。
私はめっちゃ迷い挫折しかけました。。笑

最近ChatGPTのAPI料金節約のためローカルのLLMを利用する機会が多く、ふとそんな思い出を思い出したため、触り始めたばかりの人が引っかかりやすい(かもしれない)箇所についてまとめてみました。

  1. ollama serveを実行していない
    ローカルでLLMを使用するにあたり、ローカルのPC内でollamaのサーバーを起動させなければいけません。使い始めたばかりのころはこれを知らず、挫折しかけていました...
    Powershellで下記コマンドを実行することでollamaサーバーを立ち上げることができます。

    ollama serve
    
  2. RequestsJSONDecodeErrorが出る
    ローカルLLMでコーディングした際に一番出やすいのはこれでした。チャットボットとして作ったときは出ないけどニュースの自動要約とかで使うとなぜかエラーが出る...といったことが往々にしてありました。
    これはpostするjsonで"stream"をfalseにしていなかったことが原因でした。
    こうすることで回答を生成しきってから一気にpostできるようになります。(私の場合はたいていこれだけで解決しました)

    payload = {
             "model": MODEL_NAME,
             "prompt": prompt,
             "stream": False
         }
    

他にもいろいろ詰まっていたところはありましたが、個人的に印象に残っていた2つを上げさせて頂きました。
今ローカルLLMをコード上で動かす方法が分からず詰まっている方の一助となれば幸いです。

Discussion