🦜
【Ollama】ローカル環境でLLMを選んでLangChainで実行する。
【0】事前準備
Ollamaをインストールする
公式サイトから「Ollama」をダウンロードして、起動。
ダウンロードするとすぐに利用できるようになります。
CLIコマンドを確認する
コマンド | 内容 |
---|---|
ollama serve |
Ollamaを起動 |
ollama create <モデル名> -f Modelfile |
Modelfileからモデルを作成 |
ollama show <モデル名> |
モデル情報を見る |
ollama run <モデル名> |
モデルを実行 |
ollama stop <モデル名> |
モデルを停止 |
ollama pull <モデル名> |
モデル一覧からモデルを取得 |
ollama push <モデル名> |
モデル一覧にモデルを登録 |
ollama list |
モデル一覧 |
ollama ps |
動作中のモデル一覧 |
ollama cp <モデル名> <新しいモデル名> |
モデルのコピー |
ollama rm <モデル名> |
モデルの削除 |
$ ollama run <モデル名>
# 回答を生成する
>>> こんにちは!
こんにちは!
# システムプロンプトを指定する
>>> /set system "あなたはアシスタントAIです"
Set system message.
【1】モデルを指定して取得する
Ollamaライブラリのモデル一覧から使う
$ ollama run <モデル名>
$ ollama run llama3.2
HuggingFaceにあるモデルから使う
$ ollama run hf.co/{username}/{repository}
$ ollama run hf.co/elyza/Llama-3-ELYZA-JP-8B
【2】LangChainでOllamaを使用する
from langchain_core.prompts import ChatPromptTemplate
from langchain_ollama.llms import OllamaLLM
def main():
# MODEL
model = OllamaLLM(model="hf.co/elyza/Llama-3-ELYZA-JP-8B-GGUF")
# PROMPT
template = """Question: {question}
Answer: ステップバイステップで考えてみましょう。"""
prompt = ChatPromptTemplate.from_template(template)
# CHAIN
chain = prompt | model
result = chain.invoke({"question": "美味しいパスタの作り方は?"})
print(result)
if __name__ == "__main__":
main()
$ python main.py
# 美味しいパスタを作るには、まず、質のいいパスタを選びます。次に、熱いお湯で塩茹でしますが、この時点で、パスタの種類や好みで水の量や塩加減を調整する必要があります。
#
# 次はソース作りです。基本的には、好みの油でニンニクと唐辛子を炒めます。香りが立ってきたら、好みの野菜や肉、魚介類を加えて炒めます。そこに、トマト缶やワイン、ブイヨンなどを足してソース全体の味を整えます。
#
# 最後に、茹でたパスタとソースを合わしますが、この時点で好みで塩加減や油分を調整する必要があります。上手く絡めば、美味しいパスタの完成です。美味しいパスタを作るには、時間と手間がかかりますが、手順を守りながら自分の好みに調整することが大切です。
まとめ
Ollamaを使うと、簡単にLLMをローカル実行できました。
Discussion