In einer Zeit, in der Technologie zum Eckpfeiler der Produktivität und Zusammenarbeit geworden ist, erweist sich CrewAI als bahnbrechende Lösung und revolutioniert die Art und Weise, wie Teams interagieren, kommunizieren und Aufgaben erledigen. Im Kern ist CrewAI eine hochentwickelte, KI-gestützte Plattform, die darauf ausgelegt ist, die Teamarbeit zu optimieren, die Kommunikation zu verbessern und Workflows in verschiedenen Branchen und Organisationsstrukturen zu optimieren.
Gegründet auf den Prinzipien der Effizienz, Anpassungsfähigkeit und eines nutzerorientierten Designs, integriert sich CrewAI nahtlos in bestehende Workflows und bietet eine umfassende Auswahl an Funktionen, die auf die vielfältigen Bedürfnisse moderner Teams zugeschnitten sind. Egal ob kleine Start-ups, multinationale Konzerne oder remote arbeitende Teams auf der ganzen Welt – CrewAI passt sich an und skaliert, um eine reibungslose Zusammenarbeit zu ermöglichen.
Eine der Hauptsäulen von CrewAI sind seine fortschrittlichen Kommunikationsfunktionen. Durch Algorithmen der Natursprachen-Verarbeitung (NLP) und Machine-Learning-Modelle befähigt CrewAI Teammitglieder, mühelos zu kommunizieren – unabhängig von ihrem physischen Standort oder ihrer Zeitzone. Von Sofortnachrichten bis hin zu Sprach- und Videokonferenzen stellt CrewAI sicher, dass jede Interaktion reibungslos, effizient und produktiv verläuft.
Darüber hinaus geht CrewAI über herkömmliche Kommunikationstools hinaus, indem es KI-gestützte Erkenntnisse nutzt, um datengesteuerte Entscheidungen zu ermöglichen. Durch die Analyse riesiger Datenmengen liefert CrewAI wertvolle Einblicke in die Teamdynamik, den Projektfortschritt und potenzielle Engpässe, sodass Teams in Echtzeit fundierte Entscheidungen treffen können.
Eine weitere herausragende Funktion von CrewAI sind seine Projektmanagement-Fähigkeiten. Mit intuitiver Aufgabenzuweisung, Fortschrittsverfolgung und Fristenmanagement vereinfacht CrewAI das Projektmanagement und fördert die Rechenschaftspflicht innerhalb von Teams. Durch automatisierte Erinnerungen, Benachrichtigungen und intelligente Terminplanung stellt CrewAI sicher, dass Projekte auf Kurs bleiben, Meilensteine erreicht werden und Fristen eingehalten werden.
Darüber hinaus erstreckt sich die Vielseitigkeit von CrewAI auf seine Integrationsfähigkeiten, die eine nahtlose Konnektivität mit gängigen Produktivitätstools, CRMs und Projektmanagement-Plattformen ermöglichen. Egal, ob es sich um die Integration mit Slack, Microsoft Teams oder Trello handelt – CrewAI stellt sicher, dass Teams ihre bestehenden Tools nutzen und gleichzeitig von seinen fortschrittlichen Funktionen profitieren können.
Da Unternehmen zunehmend auf Homeoffice und verteilte Teams setzen, erweist sich CrewAI als wichtiger Verbündeter, der die Lücke zwischen geografischen Grenzen überbrückt und ein Gefühl der Zusammenarbeit und Kameradschaft unter den Teammitgliedern fördert. Mit seinem Fokus auf Effizienz, Kommunikation und Anpassungsfähigkeit ist CrewAI nicht nur ein Werkzeug, sondern ein Katalysator für Transformation, der Teams befähigt, ihre Ziele mit beispielloser Geschwindigkeit und Präzision zu erreichen.
LangChain Tools: Multilingual Kommunikation in einer globalisierten Welt ermöglichen
In einer zunehmend vernetzten Welt, in der Unternehmen über Grenzen hinweg expandieren und Einzelpersonen mit verschiedenen Kulturen interagieren, ist eine effektive Kommunikation über Sprachgrenzen hinweg unerlässlich geworden. Sprachbarrieren können die Zusammenarbeit behindern, den Markteintritt erschweren und Wachstumschancen begrenzen. Mit dem Aufkommen fortschrittlicher Technologien und künstlicher Intelligenz (KI) sind jedoch Lösungen wie LangChain Tools entstanden, die die Art und Weise, wie wir an mehrsprachige Kommunikation herangehen, revolutionieren.
Der Bedarf an mehrsprachiger Kommunikation
In einer globalisierten Wirtschaft müssen Unternehmen die sprachliche Vielfalt meistern, um breitere Zielgruppen zu erreichen, neue Märkte zu erschließen und internationale Partnerschaften einzugehen. Sprachbarrieren behindern nicht nur Geschäftsabläufe, sondern beschränken auch den Zugang zu Informationen und Möglichkeiten für Einzelpersonen. Eine effektive mehrsprachige Kommunikation ist daher unerlässlich für die Förderung von Zusammenarbeit, Innovationsförderung und interkulturelles Verständnis.
Die Entstehung von LangChain Tools
LangChain Tools erweist sich als bahnbrechende Lösung, um die Herausforderungen der mehrsprachigen Kommunikation zu meistern. Durch den Einsatz von KI, Natursprachen-Verarbeitung (NLP) und linguistischem Fachwissen bietet LangChain Tools eine umfassende Suite von Funktionen, die auf die vielfältigen Bedürfnisse moderner Unternehmen und Einzelpersonen zugeschnitten sind. Die Fähigkeit, Inhalte über verschiedene Formate und Kontexte hinweg präzise zu übersetzen und zu lokalisieren, macht es zu einem transformativen Werkzeug im Bereich der Sprachtechnologie.
Wichtige Funktionen und Fähigkeiten
LangChain Tools verfügt über eine Vielzahl von Funktionen, die darauf ausgelegt sind, Übersetzungsprozesse zu optimieren, die Produktivität zu steigern und sprachliche Genauigkeit zu gewährleisten. Seine KI-gestützten Algorithmen analysieren riesige Mengen an linguistischen Daten, um kontextbezogen relevante Übersetzungen zu generieren und dabei die Nuancen und den Ton des Originalinhalts zu bewahren. Darüber hinaus unterstützt LangChain Tools Übersetzungen in mehreren Formaten, darunter Text, Audio, Video und Bilder, und erfüllt damit vielfältige Kommunikationsbedürfnisse.
Die Lokalisierungsfähigkeiten der Plattform gehen über eine wörtliche Übersetzung hinaus und berücksichtigen kulturelle Nuancen, Präferenzen und Erwartungen, um Inhalte für Zielgruppen anzupassen. Von der Lokalisierung von Websites bis hin zu Marketingmaterialien und technischer Dokumentation befähigt LangChain Tools Unternehmen, bei lokalen Zielgruppen Anklang zu finden und das Engagement auf globaler Ebene zu steigern.
Sicherheit und Vertraulichkeit
Angesichts wachsender Bedenken hinsichtlich Datenschutz und Sicherheit hat LangChain Tools den Schutz sensibler Informationen während des Übersetzungsprozesses zur Priorität gemacht. Robuste Verschlüsselungsprotokolle und Datenschutzmaßnahmen stellen die Vertraulichkeit von proprietären Geschäftsunterlagen, Kundenkommunikation und personenbezogenen Daten sicher und schaffen Vertrauen und Zuversicht bei den Nutzern.
Förderung der Zusammenarbeit und Effizienz
LangChain Tools bietet eine Reihe von kollaborativen Funktionen, um Übersetzungsabläufe zu optimieren und die Effizienz zu steigern. Seine Terminologieverwaltungstools, Glossare und Stilhandbücher fördern Konsistenz und Kohärenz in Übersetzungen, reduzieren Fehler und verbessern die Qualität. Darüber hinaus ermöglichen kollaborative Workflows Teams eine reibungslose Zusammenarbeit, den Austausch von Feedback und die Verfolgung des Projektfortschritts in Echtzeit, wodurch Teamarbeit und Rechenschaftspflicht gefördert werden.
Kontinuierliche Innovation und Sprachunterstützung
Im Zuge der Weiterentwicklung der Sprachtechnologie bleibt LangChain Tools an der Spitze der Innovation, indem es Nutzerfeedback, KI-Fortschritte und linguistische Forschung nutzt, um seine Fähigkeiten zu erweitern. Die Plattform baut ihre Sprachunterstützung kontinuierlich aus und fügt Unterstützung für neue Sprachen und Dialekte hinzu, um der vielfältigen sprachlichen Landschaft der globalen Märkte gerecht zu werden.
Reale Anwendungen und Auswirkungen
Die realen Anwendungen von LangChain Tools sind vielfältig und abwechslungsreich. Unternehmen aus verschiedenen Branchen nutzen die Plattform, um ihre Produkte und Dienstleistungen zu lokalisieren, ihre Reichweite zu erhöhen und mit Kunden auf der ganzen Welt in Kontakt zu treten. Von E-Commerce-Unternehmen, die neue Märkte erschließen, bis hin zu multinationalen Konzernen, die globale Aktivitäten managen, spielt LangChain Tools eine entscheidende Rolle bei der Erleichterung grenzüberschreitender Kommunikation und der Förderung internationalen Wachstums.
GoogleSerperAPIWrapper-Tool:
Das GoogleSerperAPIWrapper-Tool bietet Entwicklern eine praktische Schnittstelle zur Interaktion mit den Such-Daten von Google, die Aufgaben wie Web-Scraping, Datenextraktion und -analyse ermöglicht. Durch die Nutzung dieses Tools können Entwickler auf Suchergebnisse zugreifen, Informationen von Webseiten abrufen und Erkenntnisse aus Googles riesigem Bestand an indizierten Inhalten gewinnen. Dieses Tool ist besonders nützlich für Anwendungen, die Echtzeitzugriff auf Suchmaschinen-Daten erfordern, einschließlich SEO-Analyse, Marktforschung und Content-Kuratierung. Indem das GoogleSerperAPIWrapper-Tool die Komplexität des Web-Scrapings und der Datenverarbeitung abstrahiert, vereinfacht es den Prozess des Zugriffs auf SERPs-Daten und befähigt Entwickler, robuste und skalierbare Anwendungen zu erstellen, die Googles Suchfunktionen effektiv nutzen.
Mit load_tools() geladene human_tools:
Die Funktion load_tools([„human“]) lädt eine Reihe von Tools, die speziell dafür konzipiert sind, die Interaktion mit Menschen oder menschliche Eingaben innerhalb des LangChain-Frameworks zu erleichtern. Diese „Human-Tools“ sind darauf ausgelegt, Aufgaben zu bewältigen, die menschliches Urteilsvermögen, Kreativität oder Subjektivität erfordern, und ergänzen die automatisierten Fähigkeiten anderer Tools und Agents innerhalb des Frameworks. Beispiele für Aufgaben, die mit Human-Tools durchgeführt werden können, sind die Bewertung von Inhalten, die Validierung der Stimmungsanalyse, die Datenannotation und die Sammlung von Nutzerfeedback. Durch die Integration von Human-Tools in das LangChain-Ökosystem können Entwickler die Lücke zwischen automatisierter Verarbeitung und menschlicher Kognition überbrücken und so präzisere und nuanciertere Ergebnisse bei sprachbezogenen Aufgaben und Prozessen erzielen. Diese Integration von Human-Tools spiegelt LangChains Engagement für Vielseitigkeit und Anpassungsfähigkeit wider und ermöglicht es Entwicklern, KI-Systeme zu entwickeln, die sowohl maschinelle Intelligenz als auch menschliches Fachwissen nutzen, um optimale Ergebnisse zu erzielen.
Was ist Serper?
Serper ist ein hochentwickeltes SEO-Tool (Search Engine Optimization), das dazu dient, die Performance einer Website in den Suchergebnissen (SERPs) zu verbessern. Seine Hauptfunktion besteht darin, Keyword-Rankings zu verfolgen, Analysen bereitzustellen und Optimierungsempfehlungen zu geben, um die Sichtbarkeit und den organischen Traffic einer Website zu erhöhen.
Vorteile von Serper umfassen:
- Präzise Keyword-Verfolgung: Serper überwacht Keyword-Rankings im Laufe der Zeit präzise, sodass Nutzer die Sichtbarkeit und Wettbewerbsfähigkeit ihrer Website in den Suchergebnissen bewerten können.
- Umfassende Analysen: Die Plattform bietet detaillierte Analyse- und Berichtsfunktionen, mit denen Nutzer die Wirksamkeit ihrer SEO-Strategien messen und das Wachstum des organischen Traffics verfolgen können.
- Optimierungsempfehlungen: Serper liefert umsetzbare Erkenntnisse und Optimierungsempfehlungen, um Nutzer dabei zu unterstützen, ihre SEO-Bemühungen zu verfeinern und die Performance ihrer Website in den Suchmaschinen zu verbessern.
- Benutzerfreundliche Oberfläche: Mit seinem intuitiven Design und anpassbaren Dashboards ist Serper für Nutzer aller Qualifikationsstufen zugänglich – vom Anfänger bis zum erfahrenen SEO-Profi.
- Wettbewerbsanalyse: Serper ermöglicht es Nutzern, die Performance von Wettbewerbern zu analysieren und Branchentrends zu verfolgen, wodurch Unternehmen bei den Online-Suchplatzierungen einen Schritt voraus bleiben.
Wie man einen Serper-API-Schlüssel erstellt
Um einen API-Schlüssel für Serper zu erstellen, folgen Sie diesen allgemeinen Schritten:
- Registrieren oder Anmelden: Besuchen Sie die Serper-Website und registrieren Sie sich für ein Konto, falls Sie noch keines haben. Wenn Sie bereits über ein Konto verfügen, melden Sie sich mit Ihren Anmeldedaten an.
- Zugriff auf die API-Dokumentation: Navigieren Sie nach der Anmeldung zum Bereich der API-Dokumentation. Hier finden Sie Informationen darüber, wie Sie einen API-Schlüssel generieren und verwenden können.
- API-Schlüssel generieren: Suchen Sie in der API-Dokumentation nach dem Abschnitt, der erklärt, wie man einen API-Schlüssel generiert. In der Regel müssen Sie auf eine Schaltfläche „API-Schlüssel generieren“ klicken oder zu Ihren Kontoeinstellungen navigieren, wo Sie einen neuen API-Schlüssel erstellen können.
- API-Schlüssel-Einstellungen konfigurieren (optional): Einige Plattformen erlauben Ihnen, Einstellungen für Ihren API-Schlüssel zu konfigurieren, wie z.B. die Festlegung von Nutzungslimits oder die Beschränkung des Zugriffs auf bestimmte Endpunkte. Konfigurieren Sie diese Einstellungen gegebenenfalls entsprechend Ihren Bedürfnissen.
- API-Schlüssel kopieren: Sobald der API-Schlüssel generiert wurde, kopieren Sie ihn an einen sicheren Ort. Sie benötigen diesen API-Schlüssel, um Ihre Anfragen bei der Verwendung der Serper-API zu authentifizieren.
- API-Schlüssel implementieren: Jetzt, da Sie Ihren API-Schlüssel haben, können Sie ihn in Ihren Anwendungen oder Skripten nutzen, um auf die Serper-API zuzugreifen. Beachten Sie die API-Dokumentation für Details zur Authentifizierung Ihrer Anfragen mithilfe des API-Schlüssels.
- API-Schlüssel testen: Bevor Sie Ihre Anwendung oder Ihr Skript in einer Produktionsumgebung einsetzen, ist es ratsam, Ihren API-Schlüssel zu testen, um sicherzustellen, dass er korrekt funktioniert. Sie können dies tun, indem Sie eine einfache API-Anfrage stellen und überprüfen, ob Sie die erwartete Antwort erhalten.
- API-Schlüssel verwalten: Verfolgen Sie Ihren API-Schlüssel und verwalten Sie ihn sicher. Wenn Sie vermuten, dass Ihr API-Schlüssel kompromittiert wurde, oder wenn Sie ihn nicht mehr benötigen, können Sie den API-Schlüssel in der Regel über Ihre Kontoeinstellungen widerrufen oder neu generieren lassen.
Bitte beachten Sie, dass die spezifischen Schritte zur Erstellung eines API-Schlüssels je nach Plattform und API-Anbieter variieren können. Beziehen Sie sich immer auf die offizielle Dokumentation von Serper, um die aktuellsten und genauesten Anweisungen zu erhalten.
Lass uns praktisch werden
Dieser Codeausschnitt veranschaulicht den Einsatz verschiedener Tools und APIs im Kontext von Sprachverarbeitungs- und Internetrecherche-Aufgaben. Lass uns ihn aufschlüsseln:
- Import-Anweisungen: Der Code beginnt mit dem Import der erforderlichen Module und Bibliotheken, einschließlich os für Umgebungsvariablen und bestimmte Module aus den langchain- und crewai-Paketen.
pip install langchain crewai langchain
- Umgebungsvariablen: Es setzt Umgebungsvariablen wie SERPER_API_KEY und OPENAI_API_KEY, die typischerweise zur Authentifizierung und für den Zugriff auf bestimmte APIs wie die Serper-API für Internetrecherchen und die OpenAI-API für Natursprachen-Verarbeitung erforderlich sind.
- Import von Modulen und Klassen: Es importiert bestimmte Klassen und Funktionen aus den langchain- und crewai-Paketen, wie Tool, load_tools, Agent, Task, Process und Crew, die für die Erstellung von Agenten, Aufgaben und Prozessen für sprachbezogene Aufgaben und Zusammenarbeit verwendet werden.
- Erstellen eines GoogleSerperAPIWrapper: Es erstellt eine Instanz der Klasse GoogleSerperAPIWrapper, die vermutlich ein Wrapper um die Google Serper API ist. Diese API wird zum Scraping von Google-Suchergebnissen verwendet, wie das Tool „Scrape google searches“ andeutet.
- Tool definieren: Es definiert ein Tool namens „Scrape google searches“ mit der Tool-Klasse. Dieses Tool ist mit der Funktion search.run verknüpft, die wahrscheinlich den Scraping-Prozess für Google-Suchen auslöst.
- Human Tools laden: Es lädt Human Tools mit der load_tools-Funktion, vermutlich um Tools für die menschliche Interaktion oder Eingabe innerhalb der Sprachverarbeitungsaufgaben einzubeziehen.
- GPT-4 laden: Es lädt das GPT-4-Modell, vermutlich über eine API, für Aufgaben der Natursprachen-Verarbeitung. Die spezifischen Details, wie die GPT-4-API zugegriffen und initialisiert wird, sind im Codeausschnitt nicht enthalten.
import os
from langchain.agents import Tool
from langchain.agents import load_tools
from crewai import Agent, Task, Process, Crew
from langchain.utilities import GoogleSerperAPIWrapper
# Um Ihren API-Schlüssel kostenlos zu erhalten, besuchen und registrieren Sie sich: https://serper.dev/
os.environ["SERPER_API_KEY"] = #"serp-api-hier"
search = GoogleSerperAPIWrapper()
search_tool = Tool(
name="Scrape google searches",
func=search.run,
description="Nützlich, wenn der Agent das Internet durchsuchen soll",
)
# Human Tools laden
human_tools = load_tools(["human"])
# GPT-4 laden
api = #openapi-schlüssel
os.environ["OPENAI_API_KEY"] = #openapi-schlüssel
Was ist ein Agent?
LangChain-Agenten sind intelligente Entitäten, die darauf programmiert sind, bestimmte sprachbezogene Aufgaben oder Prozesse innerhalb des LangChain-Frameworks autonom auszuführen. Diese Agenten nutzen Techniken der künstlichen Intelligenz (KI) und der Natursprachen-Verarbeitung (NLP), um menschliche Sprache zu verstehen, zu analysieren und zu generieren, und ermöglichen so eine Vielzahl von sprachbezogenen Anwendungen und Diensten.
Ein LangChain-Agent besteht typischerweise aus folgenden Komponenten:
- Rolle: Definiert die Rolle oder Funktion des Agenten innerhalb des Systems. Dies kann alles von einem Sprachübersetzer bis hin zu einem Sentiment-Analyzer oder einem Content-Generator sein.
- Ziel: Legt das primäre Ziel oder die Aufgabe fest, die der Agent erfüllen soll. Dies können Aufgaben wie das Übersetzen von Text, die Analyse von Stimmungen in Social-Media-Beiträgen oder die Generierung von menschenähnlichen Antworten auf Nutzeranfragen sein.
- Hintergrundgeschichte: Liefert Kontext- oder Hintergrundinformationen über den Agenten, einschließlich seiner Fachkenntnisse, Fähigkeiten und Spezialisierungen. Dies hilft den Nutzern, die Rolle des Agenten zu verstehenund wie er in das breitere Ökosystem passt.
- Tools: Spezifiziert die Tools oder Ressourcen, auf die der Agent zugreifen kann, um seine Aufgaben auszuführen. Dies können Sprachmodelle, APIs, Datenbanken oder externe Dienste für den Datenabruf und die Datenverarbeitung sein.
- Ausführlich: Gibt an, ob der Agent detaillierte Ausgaben oder Rückmeldungen während der Ausführung liefert. Wenn dieser Parameter auf True gesetzt ist, kann der Agent mehr Informationen über seine Aktionen und Entscheidungen bereitstellen.
- Delegation erlauben: Bestimmt, ob dem Agenten erlaubt ist, Aufgaben an andere Entitäten oder Agenten innerhalb des Systems zu delegieren. Dieser Parameter steuert die Autonomie des Agenten bei der Entscheidungsfindung und der Aufgabenausführung.
Hier erstellen wir 3 Agenten, sie sind unsere Crew-Mitglieder für diese Mission:
- explorer: Ein leitender Forscher, spezialisiert auf die Identifizierung und Erkundung von Projekten und Unternehmen an der Spitze der KI-, LLM- und generativen KI-Branche, mit der Fähigkeit, Daten aus dem Internet zu sammeln und detaillierte Berichte zu erstellen.
- writer: Ein leitender technischer Autor, der fachkundig darin ist, fesselnde Blogbeiträge über die neuesten KI-Projekte in einfachen, allgemeinverständlichen Worten zu verfassen und dabei auf gecrawlte Daten aus dem Internet zurückzugreifen, um zugängliche Inhalte zu erstellen.
- critic: Ein Experte für Schreibkritik, der Feedback und Kritik an Entwürfen von Blogbeiträgen liefert, um sicherzustellen, dass der Schreibstil fesselnd, einfach und präzise ist, dabei aber technisch fundiert bleibt und Fachbegriffe effektiv in allgemeinverständlicher Sprache erklärt.
explorer = Agent(
role="Leitender Forscher",
goal="Finden und Erkunden der spannendsten Projekte und Unternehmen im KI-, LLM- und generativen KI-Bereich 2024",
backstory="""Sie sind ein Experten-Stratege, der weiß, wie man aufkommende Trends und Unternehmen in den Bereichen KI, Technologie und maschinelles Lernen erkennt.
Sie sind großartig darin, interessante Nachrichten, Newsletter und Artikel über Gen AI mit Links aus dem Internet, LinkedIn und Reddit zu finden. Sie wandeln gecrawlte Daten in detaillierte Berichte mit Namen der spannendsten Projekte und Unternehmen in der KI/ML-Welt um. Verwenden Sie NUR gecrawlte Daten aus dem Internet für den Bericht. Suchen Sie den Großteil der Inhalte auf LinkedIn und in führenden Tech-Unternehmensnewslettern.""",
verbose=True,
allow_delegation=False,
tools=[search_tool],
)
writer = Agent(
role="Leitender Technischer Autor",
goal="Schreibe fesselnde und interessante Blogbeiträge über die neuesten KI-Projekte in einfacher, allgemeinverständlicher Sprache",
backstory="""Sie sind ein Experten-Autor für technische Innovationen, besonders auf dem Gebiet der KI und des maschinellen Lernens. Sie wissen, wie man fesselnd, interessant, aber trotzdem einfach, sachlich und präzise schreibt. Sie wissen, wie man komplizierte technische Begriffe für ein allgemeines Publikum auf unterhaltsame Weise mit einfachen Worten präsentiert. Verwenden Sie NUR gecrawlte Daten aus dem Internet für den Blog.""",
verbose=True,
allow_delegation=True,
)
critic = Agent(
role="Experten-Schreibkritiker",
goal="Geben Sie Feedback und kritisieren Sie Entwürfe von Blogbeiträgen. Stellen Sie sicher, dass Ton und Schreibstil fesselnd, einfach und präzise sind",
backstory="""Sie sind ein Experte darin, technischen Autoren Feedback zu geben. Sie können erkennen, wenn ein Blogtext nicht präzise, einfach oder fesselnd genug ist. Sie wissen, wie man hilfreiche Rückmeldungen geben kann, um jeden Text zu verbessern. Sie wissen, wie man dafür sorgt, dass ein Text technisch fundiert und aufschlussreich bleibt, indem man Fachbegriffe in einfachen Worten erklärt.""",
verbose=True,
allow_delegation=True,
)
Definition einer Aufgabe:
Eine Aufgabe für einen Agenten ist typischerweise durch folgende Komponenten gekennzeichnet:
- Ziel: Das Ziel der Aufgabe spezifiziert, was der Agent erreichen soll. Dazu können Aufgaben wie die Übersetzung von Text, Stimmungsanalyse, Texterstellung, Zusammenfassung von Dokumenten oder andere sprachbezogene Operationen gehören.
- Umfang: Der Umfang der Aufgabe definiert die Grenzen und Parameter, innerhalb derer der Agent operiert. Dazu gehören die Art von Eingabedaten, die der Agent verarbeiten kann, die Ausgabe, die er erzeugen kann, sowie etwaige Einschränkungen oder Beschränkungen seiner Handlungen.
- Eingabedaten: Die Eingabedaten für die Aufgabe beziehen sich auf die Informationen oder Inhalte, die der Agent als Eingabe für die Durchführung seiner Operation erhält. Dies können Text, Audio, Video oder jede andere Form von sprachlichen Daten sein, die für die Aufgabe relevant sind.
- Verarbeitungsschritte: Die Verarbeitungsschritte skizzieren die Abfolge von Operationen oder Algorithmen, denen der Agent folgt, um das Aufgabenziel zu erreichen. Dazu gehören die Vorverarbeitung von Daten, Analyse, Modellierung und alle anderen rechnerischen Schritte, die erforderlich sind, um die gewünschte Ausgabe zu erzeugen.
- Ausgabe: Die Ausgabe der Aufgabe repräsentiert das Ergebnis oder die Ausgabe, die der Agent nach der Verarbeitung der Eingabedaten erzeugt. Dies kann übersetzter Text, Sentiment-Analyse-Scores, generierter Text, zusammengefasster Inhalt oder jedes andere relevante Ausgabeformat sein.
task_report = Task(
description="""Fassen Sie gecrawlte Daten aus dem Internet zusammen und erstellen Sie einen detaillierten Bericht über die neuesten Trends und Nachrichten in KI, generativer KI und LLM. Verwenden Sie NUR gecrawlte Daten, um den Bericht zu generieren. Ihre endgültige Antwort MUSS ein vollständiger Analysebericht sein, nur Text, ignorieren Sie Code oder alles, was kein Text ist. Der Bericht muss Stichpunkte enthalten mit 5-10 spannenden neuen KI-Projekten und -Tools. Schreiben Sie die Namen jedes Tools und Projekts auf. Jeder Stichpunkt MUSS 3 Sätze enthalten, die sich auf ein bestimmtes KI-Unternehmen, -Produkt, -Modell oder alles beziehen, das Sie im Internet gefunden haben.""",agent=explorer,
)
task_blog = Task(
description="""Schreiben Sie einen Blogbeitrag mit reinem Text, einer kurzen aber wirkungsvollen Überschrift und mindestens 10 Absätzen. Der Blog sollte den Bericht über die neuesten KI-Tools auf dem LocalLLama-Subreddit zusammenfassen. Stil und Ton sollten fesselnd und präzise sein, unterhaltsam, technisch, aber auch in einfachen Worten gehalten für die breite Öffentlichkeit. Benennen Sie spezifische neue und spannende Projekte, Apps und Unternehmen aus der KI-Welt. Schreiben Sie nicht "**Absatz [Nummer des Absatzes]:**", sondern beginnen Sie einen neuen Absatz in einer neuen Zeile. Schreiben Sie die Namen von Projekten und Tools in FETT.
IMMER Links zu Projekten/Tools/Forschungsarbeiten einfügen. Nehmen Sie NUR Informationen aus LocalLLAma auf.
Verwenden Sie für Ihre Ausgaben das folgende Markdown-Format:
[Titel des ersten Beitrags](Link zum Projekt)
- Interessante Fakten
- Eigene Gedanken, wie es mit dem Gesamtthema des Newsletters zusammenhängt
[Titel des zweiten Beitrags](Link zum Projekt)
- Interessante Fakten
- Eigene Gedanken, wie es mit dem Gesamtthema des Newsletters zusammenhängt
""",
agent=writer,
)
task_critique = Task(
description="""Blogformat""",
agent=critic,
)
Ausführung
- Crew-Einrichtung: Die Crew-Klasse wird mit einer Liste von Agenten und einer Liste von Aufgaben initialisiert. Jedem Agenten werden spezifische Rollen und Ziele zugewiesen, während jede Aufgabe ein bestimmtes Ziel für die Agenten definiert.
- Ausführlicher Modus: Der verbose-Parameter ist auf 2 gesetzt, was auf einen hohen Grad an Ausführlichkeit hindeutet. Das heißt, die Crew wird während ihrer Ausführung detaillierte Ausgaben oder Rückmeldungen liefern und Einblicke in den Fortschritt und die Ergebnisse jeder Aufgabe geben.
- Sequenzieller Prozess: Der process-Parameter ist auf Process.sequential gesetzt, was bedeutet, dass die Aufgaben nacheinander in Sequenz ausgeführt werden. Das Ergebnis jeder Aufgabe wird als zusätzlicher Inhalt an die nächste Aufgabe weitergegeben, was eine kontinuierliche und kohärente Arbeitsabfolge ermöglicht.
- Start: Die Crew wird mit der kickoff()-Methode gestartet, die die Ausführung der Aufgaben durch die Agenten auslöst. Diese Methode orchestriert den Arbeitsablauf und stellt sicher, dass jede Aufgabe gemäß der spezifizierten Reihenfolge und Abhängigkeiten ausgeführt wird.
- Ergebnis: Das Ergebnis der Crew-Operation wird in der Variablen result gespeichert, die bei Bedarf weiter analysiert oder verarbeitet werden kann. Dieses Ergebnis liefert Einblicke darüber, ob die Crew ihre Ziele erreicht und die zugewiesenen Aufgaben erfolgreich abgeschlossen hat.
crew = Crew(
agents=[explorer, writer, critic],
tasks=[task_report, task_blog, task_critique],
verbose=2,
process=Process.sequential, # Ein sequenzieller Prozess wird dazu führen, dass die Aufgaben nacheinander ausgeführt werden und das Ergebnis der vorherigen Aufgabe als zusätzlicher Inhalt in die nächste einfließt.
)
# Lassen Sie Ihre Crew arbeiten!
result = crew.kickoff()
print(result)
Ergebnisse
Ausgabe für den obigen Code:
Es mag nicht gut aussehen, aber durch Optimierung der Rollen- und Aufgabenprompts können wir dies in guter Form erreichen.
Zuvor habe ich Projektlinks von Code Llama von Reddit verwendet, was bessere Ergebnisse lieferte.
Zusätze
- Sie können dies mit Ollama ausführen und dabei beliebige lokale Modelle übergeben, indem Sie diese im LLM übergeben.
- Sie können auch mit beliebigen LangChain-LLMs laufen lassen.
- Es gibt mehrere LangChain-Tools, die hier in der Pipeline zu erkunden und zu integrieren sind, um eine vollständige Automatisierung zu erreichen.