ホームページ >バックエンド開発 >Python チュートリアル >ローカル LLM の実行と API リクエストの作成に関する簡単なガイド

ローカル LLM の実行と API リクエストの作成に関する簡単なガイド

DDD
DDDオリジナル
2024-11-22 08:55:15863ブラウズ

Quick and Dirty Guide to Running a Local LLM and Making API Requests

わかりました。ここでは、ローカル LLM (言語モデル) を実行して API リクエストを行うための、簡単で汚いソリューションを取り上げます。派手な商用ソリューションが行うこととよく似ています。なぜ?では、なぜそうではないのでしょうか?わずか 3 分ほどで、ほとんどのテストで完全に適切なシステムをローカルで実行できます。また、再びクラウドにスケールアップする必要があると感じた場合、元に戻すのは事実上簡単です。

これが私たちが従うドキュメントです。主に、読んだことを主張できるようにするためです:

  • OpenAI API ドキュメント

特に、次のようなリクエストを行うことに重点を置きます。

curl https://api.openai.com/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -d '{
     "model": "gpt-4o-mini",
     "messages": [{"role": "user", "content": "Say this is a test!"}],
     "temperature": 0.7
   }'

ここまでは順調ですよね?何も画期的なことはありません。しかし、ここからが楽しいところです…

LMスタジオに入る

LM Studio](https://lmstudio.ai/) という素晴らしいツールがあり、これを使用するとローカル LLM の処理がはるかに簡単になります。モデルをインストールして実行すると、「開発者」というコンソール アイコンのあるタブが表示されます。最初はあまり面白くないと思うかもしれませんが、だんだん良くなるので待ってください。このタブには、ローカル モデルの使用方法を正確に示す便利な CURL サンプルが付属しています。そして、お気づきではないでしょうか、これはかなり見覚えのあるものです!

curl http://localhost:1234/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "llama-3.1-8b-lexi-uncensored-v2",
    "messages": [
      { "role": "system", "content": "Always answer in rhymes. Today is Thursday" },
      { "role": "user", "content": "What day is it today?" }
    ],
    "temperature": 0.7,
    "max_tokens": -1,
    "stream": false
}'

かなり見覚えがあるでしょう?これは今見たもののローカルバージョンです。 OpenAI API リクエストと同じセットアップが得られますが、ローカル マシン上で実行される点が異なります。さらに、「常に韻を踏んで答えてください」というシステム プロンプトなど、ちょっとしたセンスもあります。詩、誰か?

Python についてはどうですか?ウィー・ガット・ユー。

Python を使って作業したい場合 (そうでない人はいないでしょうか?)、Python のリクエスト モジュールを使用して同じリクエストを送信する方法を次に示します。

import requests
import json

url = "http://localhost:1234/v1/chat/completions"

headers = {
    "Content-Type": "application/json"
}

data = {
    "model": "llama-3.1-8b-lexi-uncensored-v2",
    "messages": [
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "What is the capital of France?"}
    ],
    "temperature": 0.7,
    "max_tokens": -1,
    "stream": False
}

response = requests.post(url, headers=headers, data=json.dumps(data))

if response.status_code == 200:
    result = response.json()
    print(result["choices"][0]["message"]["content"])
else:
    print(f"Error: {response.status_code}")

そして出来上がりです!これで、商用 API の場合と同様に、ローカル LLM にリクエストを送信する準備が整いました。さあ、テストして、壊して、韻を踏みましょう — 世界 (または少なくともあなたのモデル) があなたのカキです。

楽しむ!

以上がローカル LLM の実行と API リクエストの作成に関する簡単なガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。