はじめに
Local環境でOllamaを経由してmodelを活用したAPPやAgentを開発する際、modelの呼び出す方法は主に以下の3つがあります。
- Ollama app + local model
- Ollama app + Ollama signin + cloud model
- API Key + cloud model
- 1つ目の方法は、modelをlocal環境にdownloadして利用する方式で、インターネット接続は不要です。
- 2つ目の方法は、インターネット経由しますが、1つ目のやり方で作成したAPPの場合、ほぼ改修せず、そのままOllama cloud上のmodelを利用できます。Localとcloudのmodelを簡単に切り替えられます。
- 3つ目の方法は、APP内でAPI keyを設定、Ollamaのcloud上にあるmodelへ直接accessする方式で、local環境にollamaを起動する必要がないです。
各方法の概要
1. Ollama app + local model
download model
- Ollamaを起動してから、model一覧からdownloadできます。download iconが付いているmodelはlocalにdownload可能です。
ollama pullコマンドでもmodelをdownloadできます。
modelの呼び出す
Ollamaが起動している状態で、modelを呼び出す
ollama python packageを利用した場合、
引数指定なしでclientを作成、model nameを指定したら、modelを呼び出すことができます。
from ollama import Client
client = Client()
messages = [
{
'role': 'user',
'content': 'Who was the best footballer in 2020? Just tell me his name.',
},
]
for part in client.chat('gemma3:1b', messages=messages, stream=True):
print(part['message']['content'], end='', flush=True)
引数指定なしで作成したclientは、defaultで local環境のollama 'http://127.0.0.1:11434' と通信します。ですから、local環境でOllamaを起動しておくことが必要です。
"""site-packages\ollama\_client.py"""
def _parse_host(host: Optional[str]) -> str:
"""
>>> _parse_host(None)
'http://127.0.0.1:11434'
2. ollama app + ollama signin + cloud model
gpt-oss:120b-cloudなどのcloud modelを利用する場合、事前にOllama sign in が必要です。
commandでもsign in, pull modelできます。
ollama signin
ollama pull gpt-oss:120b-cloud
cloud modelですから、実際にmodelをdownloadせず、manifestのみをdownloadします。
%userprofile%.ollama\models\manifests\registry.ollama.ai\library\gpt-oss
local modelと同じ方法で呼び出すことができます。
from ollama import Client
client = Client()
messages = [
{
'role': 'user',
'content': 'Who was the best footballer in 2020? Just tell me his name.',
},
]
for part in client.chat('gpt-oss:120b-cloud', messages=messages, stream=True):
print(part['message']['content'], end='', flush=True)
3. API Key + cloud model
ollama siteにlogin、https://ollama.com/settings/keys からAPI keyを発行します。
client objectを作成した際に、host"https://ollama.com" およびAPI keyを指定します。
import os
from ollama import Client
client = Client(
host="https://ollama.com",
headers={'Authorization': 'Bearer ' + key01}
)
messages = [
{
'role': 'user',
'content': 'Who was the best footballer in 2020? Just tell me his name.',
},
]
for part in client.chat('gpt-oss:120b-cloud', messages=messages, stream=True):
print(part['message']['content'], end='', flush=True)




