サンプル集  >  other  >  ローカルLLM② Python+OpenAI API
ローカルLLM② Python+OpenAI API
2025/12/20

ローカルLLMにPythonでOpenAI APIを使ってメッセージを送ってみます。

ollamaのサーバーを起動しようとしたらエラーが出ました。

>ollama serve
Error: listen tcp 127.0.0.1:11434: bind: Only one usage of each socke
t address (protocol/network address/port) is normally permitted.

ポート番号を12000に指定して再度実行します。

>set OLLAMA_HOST=127.0.0.1:12000

>ollama serve
time=2025-12-20T18:51:03.438+09:00 level=INFO source=routes.go:1554 m
:

VSCodeを開きTerminalを開き以下のコマンドを実行し仮想環境を作ります。

python -m venv myvenv

myvenvフォルダが作成されました。

.\myvenv\Scripts\activate
(myvenv) PS C:\src>

OpenAIのライブラリーをバージョン1.99.3を指定してインストールします。

(myvenv) PS C:\src> pip install openai==1.99.3

OpenAIのAPIを使ってローカルLLMにメッセージを送ってみます。

ollama_test.py
 1: 
 2: 
 3: 
 4: 
 5: 
 6: 
 7: 
 8: 
 9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
from openai import OpenAI

client = OpenAI(
    api_key="ollama",
    base_url="http://localhost:12000/v1"
)

response = client.chat.completions.create(
    model="llama3.2:3b",
    messages=[{"role""user",
               "content""ローカルLLMの利点は何ですか?"}],
    temperature=0
)

print("response全体:", response)
print("テキストだけ抽出:", response.choices[0].message.content)

実行してたところ返答が返って来ました!

(myvenv) PS C:\src> python .\ollama_test.py
response全体: ChatCompletion(id='chatcmpl-525', choices=[Choice(finis
h_reason='stop', index=0, logprobs=None, message=ChatCompletionMess
age(content='ローカル LLM(Local Large Language Model)とは、特定の
タスクや問題に対 して最適化された言語モデルのことです。ローカル LLM
 の主な利点は、次のとおりです。\n\n1.  **効率性**: ローカル LLM は
、特定のタスクまたは問題に最適化されているため、一般的な LLM と比べ
てより効率的になります。ローカル LLM は、必要な情報をより速く検索し
、処理できるからです。\n2.  **精度**: ローカル LLM は、特定のタスク
または問題に 最適化されているため、一般的な LLM と比べてより正確に
なります。ローカル LLM は、必要な情報をより正確に検索し、処理できる
からです。\n3.  **データ量**: ローカル LLM は、特定のタスクまたは問
題に最適化されているため、一般的 な LLM と比べて少ないデータ量で精
度が高くなることができます。ローカル LLM は、必要な情報をより効率的
に検索し、処理できるからです。\n4.  **コスト**: ローカル LLM は、特
定のタスクまたは問題に最適化されているため、一般的な LLM と比べてコ
ストが低くなります。ローカル LLM は、必要な情報をより効率的に検索し
、処理できるからです。\n5.  **セキュリティ**: ローカル LLM は、特定
のタスクまたは問題に最適化されているため、一般的な LLM と比べてより
セキ ュリティが高くなります。ローカル LLM は、必要な情報をより効率
的に検索し、処理できるからです。\n\nこれらの利点 により、ローカル L
LM は、特定のタスクまたは問題に対して最適化された言語モデルの開発に
役立ちます。', refusal=None, role='assistant', annotations=None, au
dio=None, function_call=None, tool_calls=None))], created=176622915
5, model='llama3.2:3b', object='chat.completion', service_tier=None
, system_fingerprint='fp_ollama', usage=CompletionUsage(completion_
tokens=451, prompt_tokens=38, total_tokens=489, completion_tokens_d
etails=None, prompt_tokens_details=None))
テキストだけ抽出: ローカル LLM(Local Large Language Model)とは、特
定のタスクや問題に対して最適化された言語モデルのことです。ローカル 
LLM の主な利点は、次のとおりです。

1.  **効率性**: ローカル LLM は、特定のタスクまたは問題に最適化されて
いるため、一般的な LLM と比べてより効率的になります。ローカル LLM 
は、必要な情報をより速く検索し、処理できるからです。
2.  **精度**: ローカル LLM は、特定のタスクまたは問題に最適化されてい
るため、一般的な LLM と比べてより正確になります。ローカル LLM は、
必要な情報をより正確に検索し、処理できるからです。
3.  **データ量**: ローカル LLM は、特定のタスクまたは問題に最適化され
ているため、一般的な LLM と比べて少ないデータ量で精度が高くなること
ができます。ローカル LLM は、必要な情報をより効率的に検索し、処理で
きるからです。   
4.  **コスト**: ローカル LLM は、特定のタスクまたは問題に最適化されて
いるため、一般的な LLM と比べてコストが低くなります。ローカル LLM 
は、必要な情報をより効率的に検索し、処理できるからです。
5.  **セキュリティ**: ローカル LLM は、特定のタスクまたは問題に最適化
されているため、一般的な LLM と比べてよりセキュリティが高くなります
。ローカル LLM は、必要な情報をより効率的に検索し、処理できるからで
す。

これらの利点により、ローカル LLM は、特定のタスクまたは問題に対して最
適化された言語モデルの開発に役立ちます。

サーバーのコマンドプロンプトにもログが大量に出力されました。

ぱっと見はそんなに変な感じはしないぐらいの返答がありますね!

関連項目

ローカルLLM

▲ PageTop  ■ Home


Copyright (C) 2025 ymlib.com