Dieser KI-betriebene Chatbot, Agribot, bietet Landwirten und Enthusiasten mehrsprachige landwirtschaftliche Informationen. Dieser Artikel beschreibt seine Funktionen, Architektur und Code und zeigt das benutzerfreundliche Design und die erweiterte Technologieintegration. Der Agrarsektor stützt sich stark auf zeitnahe, genaue Informationen; Agribot befasst sich mit diesem Bedarf mit Echtzeitdaten und mehrsprachiger Unterstützung.
Inhaltsverzeichnis
Dieses Bild zeigt die mehrsprachige, konverselle Echtzeit-Schnittstelle der streamlit Agribot-App:
Die wichtigsten Funktionen von Agribot
Agribot bietet mehrere Schlüsselfunktionen:
Agribot -Technologiestapel
Agribot verwendet:
Agribot erstellen: Eine Schritt-für-Schritt-Anleitung
Der Code -Strom -Agribot ist unten beschrieben:
1. Bibliotheken importieren:
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
Essentielle Bibliotheken werden importiert, einschließlich der Stromversorgung für die UI und Langchain für die Erstellung von Agenten. deep_translator
behandelt die Sprachübersetzung.
2. Variablen der Ladeumgebung:
load_dotenv(find_dotenv())
lädt API -Schlüssel und andere empfindliche Informationen aus einer .env
-Datei.
3. Initialisieren von AI -Tools:
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]
Informationsabrufwerkzeuge werden initialisiert und für effiziente Antwortzeiten konfiguriert.
4. Laden des Sprachmodells:
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
lädt das LLAMA 3-70B-Sprachmodell über die GROQ-API.
5. Übersetzungsfunktionen:
load_dotenv(find_dotenv())
Diese Funktionen verarbeiten die Übersetzung mit der deep_translator
Bibliothek mit der Übersetzung zum und von Englisch.
6. Speicherverwaltung:
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]
sorgt für den anhaltenden Chat -Speicher über Sitzungen hinweg.
7. Erstellen des Konversationsagenten:
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" )
initialisiert das Konversationsmittel mit Langchain.
8. Streamlit chat ui:
def translate_to_english(text): # ... (Translation logic) ... def translate_back(text, target_lang): # ... (Translation logic) ...
Dieser Abschnitt erstellt die optimistische Chat -Schnittstelle. (Voller Code für Kürze weggelassen, aber die Schlüsselelemente werden oben beschrieben.)
Code-Aufschlüsselung:
Der Code erstellt streamlit eine benutzerfreundliche Chat-Oberfläche. Die Benutzereingabe wird in Englisch übersetzt, verarbeitet vom Langchain -Agenten (unter Verwendung der LLM- und Suchwerkzeuge), und die Antwort wird in die ursprüngliche Sprache des Benutzers übersetzt. Speicherverwaltung sorgt für den Konversationskontext. Fehlerbehebung und Wiederholungsmechanismen verbessern die Robustheit.Testen von Agribot
(Bilder, die die Benutzeroberfläche von Agribot und Antworten in verschiedenen Sprachen zeigen, sind in der ursprünglichen Eingabe enthalten. Diese Bilder würden hier platziert.)
zukünftige Verbesserungen
Schlussfolgerung
Agribot ist ein wertvolles Werkzeug, das KI nutzt, und mehrsprachige Fähigkeiten zur Unterstützung der Landwirte. Die Kombination aus Echtzeitinformationen, Übersetzung und Konversationsgedächtnis macht es zu einer eindeutigen Ressource. Weiterentwicklung wird seine Funktionalität verbessern und seine Fähigkeiten erweitern.
Das obige ist der detaillierte Inhalt vonAgri -Bot: Ein mehrsprachiger KI -Agent für Landwirte, die Langchain verwenden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!