Development
LangChain for Beginners: Build Your First AI Agent
LangChain is the framework that powers most production AI applications. This step-by-step guide shows you how to build a real AI agent using LangChain.
2026-06-2518 min readLearnGeni AI Academy
LangChain入門:はじめてのAIエージェント構築
LangChainは本番環境でAIアプリケーションを構築するための最も人気なフレームワークです。
LangChainとは?
LangChainはLLMを使ったアプリケーション構築を簡素化するオープンソースのPython(およびJavaScript)フレームワークです。
解決する問題:
- 会話をまたいだAIのメモリ管理
- ドキュメントやデータベースとAIの接続
- ツール(Web検索、計算機、API)を持つエージェントの構築
インストール
pip install langchain langchain-openai langchain-community chromadb python-dotenv
最初のチェーン
from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser
model = ChatOpenAI(model="gpt-4o-mini", temperature=0)
prompt = ChatPromptTemplate.from_messages([
("system", "あなたは役立つAIアシスタントです。"),
("user", "{question}")
])
chain = prompt | model | StrOutputParser()
result = chain.invoke({"question": "LangChainとは何ですか?"})
print(result)
RAGシステム:ドキュメントからAIが回答
from langchain_openai import ChatOpenAI, OpenAIEmbeddings
from langchain_community.vectorstores import Chroma
from langchain_core.documents import Document
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.runnables import RunnablePassthrough
documents = [
Document(page_content="LearnGeniは各$5のAIガイドを30種類提供しています。"),
Document(page_content="ガイドにはLangChain、n8n、プロンプトエンジニアリングなどが含まれます。"),
]
embeddings = OpenAIEmbeddings()
vectorstore = Chroma.from_documents(documents, embeddings)
retriever = vectorstore.as_retriever()
prompt = ChatPromptTemplate.from_template("""
コンテキストに基づいて回答してください:{context}
質問:{question}
""")
model = ChatOpenAI(model="gpt-4o-mini")
chain = ({"context": retriever, "question": RunnablePassthrough()} | prompt | model)
result = chain.invoke("LearnGeniのガイドはいくらですか?")
print(result.content)
メモリ付き会話
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain
memory = ConversationBufferMemory()
conversation = ConversationChain(
llm=ChatOpenAI(model="gpt-4o-mini"),
memory=memory,
verbose=False
)
print(conversation.predict(input="こんにちは!私の名前は田中です。"))
print(conversation.predict(input="私の名前を覚えていますか?"))
# → 「はい、田中さんですね!」と返答
ツールを持つエージェント
from langchain.agents import create_openai_functions_agent, AgentExecutor
from langchain.tools import Tool
from langchain_openai import ChatOpenAI
def search_web(query: str) -> str:
"""Web検索を実行します"""
# 実際の実装ではSerpAPIなどを使用
return f"「{query}」の検索結果..."
tools = [
Tool(
name="web_search",
func=search_web,
description="最新情報を検索する必要があるときに使用"
)
]
llm = ChatOpenAI(model="gpt-4o-mini")
agent = create_openai_functions_agent(llm, tools, prompt)
executor = AgentExecutor(agent=agent, tools=tools)
result = executor.invoke({"input": "今日の東京の天気は?"})
LangChainの主要コンポーネント
| コンポーネント | 役割 |
|---|---|
| LLMs/Chat Models | AIモデルとの接続 |
| Prompts | テンプレート管理 |
| Chains | 処理フローの構築 |
| Memory | 会話履歴の保持 |
| Retrievers | 文書検索 |
| Agents | 自律的な意思決定 |
| Tools | 外部機能との連携 |
実践プロジェクト:カスタマーサポートボット
# 製品FAQデータベースを持つサポートボットの構築
from langchain_openai import ChatOpenAI, OpenAIEmbeddings
from langchain_community.vectorstores import Chroma
from langchain_core.prompts import ChatPromptTemplate
# 製品情報をベクトルストアに格納
faq_documents = [
Document(page_content="返品は購入後30日以内に受け付けます。"),
Document(page_content="送料は3,000円以上のご注文で無料です。"),
Document(page_content="サポートは平日9時〜18時に対応しています。"),
]
vectorstore = Chroma.from_documents(faq_documents, OpenAIEmbeddings())
support_prompt = ChatPromptTemplate.from_template("""
あなたは丁寧なカスタマーサポート担当者です。
以下のFAQ情報を参考に回答してください:
{context}
お客様の質問:{question}
""")
chain = ({"context": vectorstore.as_retriever(), "question": RunnablePassthrough()}
| support_prompt
| ChatOpenAI(model="gpt-4o-mini"))
print(chain.invoke("返品はできますか?").content)
LangChainを基礎から応用まで学びたい方へ。 LearnGeniの完全ガイドには実際のプロジェクトが含まれています。すべてのガイドを見る。
G
Earn Your International AI Certificate
This article is part of the LearnGeni AI Mastery Program — 30 comprehensive guides in 50+ languages. Complete all 30 and earn a certificate backed by WhatsGeni (Official Meta AI Partner), recognized in 50+ countries.
🌍
50+ Languages
Learn in your native language
🏆
Official Certificate
Backed by Meta AI Partner
💡
30 Guides
$5 each or $50 for the full bundle