このAIを搭載したチャットボット、Agribotは、農家や愛好家に多言語の農業情報を提供します。 この記事では、その機能、アーキテクチャ、コードについて詳しく説明し、ユーザーフレンドリーな設計と高度なテクノロジー統合を強調しています。 農業部門は、タイムリーで正確な情報に大きく依存しています。 Agribotは、リアルタイムデータと多言語サポートでこのニーズに対応しています。
目次
多言語のサポート:
英語、ヒンディー語、テルグ語、タミル語、ベンガル語、マラーティー語、パンジャブ語。FrontEnd:
langchain、openai llm(GROQ APIを介して)
UI用の流線やエージェント作成用のラングチェーンなど、必須ライブラリがインポートされます。 言語翻訳を処理します。
2。環境変数の読み込み:APIキーやその他の機密情報を
import os import time import streamlit as st from langchain.memory import ConversationBufferMemory from langchain.agents import initialize_agent, AgentType from langchain.chat_models import ChatOpenAI from langchain.schema import SystemMessage, HumanMessage, AIMessage from langchain_community.tools import WikipediaQueryRun, ArxivQueryRun, DuckDuckGoSearchRun from langchain_community.utilities import WikipediaAPIWrapper, ArxivAPIWrapper, DuckDuckGoSearchAPIWrapper from langdetect import detect from deep_translator import GoogleTranslator from dotenv import load_dotenv, find_dotenv
deep_translator
3。 AIツールの初期化:
情報検索ツールは初期化され、効率的な応答時間のために構成されています。
4。言語モデルの読み込み:
import os import time import streamlit as st from langchain.memory import ConversationBufferMemory from langchain.agents import initialize_agent, AgentType from langchain.chat_models import ChatOpenAI from langchain.schema import SystemMessage, HumanMessage, AIMessage from langchain_community.tools import WikipediaQueryRun, ArxivQueryRun, DuckDuckGoSearchRun from langchain_community.utilities import WikipediaAPIWrapper, ArxivAPIWrapper, DuckDuckGoSearchAPIWrapper from langdetect import detect from deep_translator import GoogleTranslator from dotenv import load_dotenv, find_dotenv
GROQ APIを介してLlama 3-70B言語モデルをロードします。
5。翻訳関数:
load_dotenv(find_dotenv())
ライブラリを使用して英語との間の翻訳を処理します。
deep_translator
セッション全体で永続的なチャットメモリを保証します
wiki = WikipediaQueryRun(api_wrapper=WikipediaAPIWrapper(top_k_results=1, doc_content_chars_max=200)) arxiv = ArxivQueryRun(api_wrapper=ArxivAPIWrapper(top_k_results=1, doc_content_chars_max=200)) duckduckgo_search = DuckDuckGoSearchRun(api_wrapper=DuckDuckGoSearchAPIWrapper(region="in-en", time="y", max_results=2)) tools = [wiki, arxiv, duckduckgo_search]
7。会話エージェントの作成:
Langchainを使用して、会話エージェントを初期化します。
def load_llm(): return ChatOpenAI( model_name="llama3-70b-8192", temperature=1, openai_api_key=os.getenv("GROQ_API_KEY"), openai_api_base="https://api.groq.com/openai/v1" )
このセクションでは、Rimelitチャットインターフェイスを構築します。 (簡潔にするために完全なコードは省略されていますが、重要な要素は上記で説明されています。)
def translate_to_english(text): # ... (Translation logic) ... def translate_back(text, target_lang): # ... (Translation logic) ...
コードは、retremlitを使用してユーザーフレンドリーなチャットインターフェイスを作成します。 ユーザーの入力は英語に翻訳され、Langchainエージェント(LLMと検索ツールを使用)によって処理され、応答はユーザーの元の言語に翻訳されます。 メモリ管理により、会話のコンテキストが保証されます。 エラー処理と再試行メカニズムは堅牢性を改善します
agribot のテスト
(AgribotのUIと異なる言語の応答を示す画像は、元の入力に含まれています。これらの画像はここに配置されます。)) 将来の機能強化
音声入力/出力 農業データの微調整
以上がAgri Bot:Langchainを使用している農家向けの多言語AIエージェントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。