Im ersten Beitrag dieser Serie (Agentic AI 101: Beginnen) Wir haben über die Grundlagen der Erstellung von KI -Agenten gesprochen und Konzepte wie Argumentation, Gedächtnis und Instruments eingeführt.

Natürlich hat dieser erste Beitrag nur die Oberfläche dieses neuen Bereichs der Datenindustrie berührt. Es gibt so viel mehr, was getan werden kann, und wir werden in dieser Serie auf dem Weg mehr lernen.

Es ist additionally Zeit, einen Schritt weiter zu gehen.

In diesem Beitrag werden wir drei Themen behandeln:

  1. Leitplanken: Dies sind sichere Blöcke, die verhindern, dass ein großes Sprachmodell (LLM) über einige Themen reagiert.
  2. Agentenbewertung: Haben Sie jemals darüber nachgedacht, wie genau die Antworten von LLM sind? Ich wette, du hast es getan. Wir werden additionally die Hauptmethoden sehen, um das zu messen.
  3. Überwachung: Wir werden auch die integrierte Überwachungs-App im Rahmen von Agno kennenlernen.

Wir werden jetzt beginnen.

Leitplanken

Unser erstes Thema ist meiner Meinung nach das einfachste. Leitplanken sind Regeln, die verhindern, dass ein KI -Agent auf ein bestimmtes Thema oder eine bestimmte Liste von Themen antwortet.

Ich glaube, es besteht eine gute Likelihood, dass Sie jemals Chatgpt oder Gemini etwas gebeten haben und eine Antwort wie „Ich kann nicht über dieses Thema sprechen“ oder „Bitte konsultieren Sie einen professionellen Spezialisten“, so etwas. Normalerweise tritt dies bei sensiblen Themen wie Gesundheitsberatung, psychologischen Bedingungen oder finanziellen Beratung auf.

Diese Blöcke sind Schutzmaßnahmen, um zu verhindern, dass Menschen sich selbst verletzen und ihre Gesundheit oder ihre Taschen schädigen. Wie wir wissen, werden LLMs auf massiven Textmengen geschult, und Ergo erbt eine Menge schlechter Inhalte damit, was in diesen Bereichen für Menschen leicht zu schlechten Ratschlägen führen könnte. Und ich habe nicht einmal Halluzinationen erwähnt!

Denken Sie darüber nach, wie viele Geschichten es sich um Menschen handelt, die Geld verloren haben, indem sie Investitionstipps aus On-line -Foren verfolgen. Oder wie viele Menschen haben die falsche Medizin genommen, weil sie Lesen Sie im Web darüber.

Nun, ich denke du hast den Punkt. Wir müssen verhindern, dass unsere Agenten über bestimmte Themen sprechen oder bestimmte Maßnahmen ergreifen. Dafür werden wir Leitplanken verwenden.

Der beste Rahmen, den ich für diese Blöcke auferlegt, sind Leitplanken AI (1). Dort sehen Sie einen Hub voller vordefinierter Regeln, die eine Antwort befolgen muss, um dem Benutzer zu übergeben und angezeigt zu werden.

Um schnell zu beginnen, gehen Sie zuerst zu diesem Hyperlink (2) und erhalten Sie einen API -Schlüssel. Installieren Sie dann das Paket. Geben Sie als Nächstes den Befehl „Leitplanken Setup“ ein. Sie werden Ihnen einige Fragen stellen, die Sie (für Nein) beantworten können, und es werden Sie aufgefordert, den generierten API -Schlüssel einzugeben.

pip set up guardrails-ai
guardrails configure

Sobald dies abgeschlossen ist, gehen Sie in die Leitplanken AI Hub (3) und wählen Sie einen, den Sie brauchen. Jede Leitplanke enthält Anweisungen zum Implementieren. Grundsätzlich installieren Sie es über die Befehlszeile und verwenden es dann wie ein Modul in Python.

Für dieses Beispiel wählen wir einen namens namens Auf Thema beschränken (4), was, wie der Identify sagt, den Benutzer nur darüber sprechen lässt, was sich in der Liste befindet. Gehen Sie additionally zurück zum Terminal und installieren Sie ihn mit dem folgenden Code.

guardrails hub set up hub://tryolabs/restricttotopic

Lassen Sie uns als nächstes unser Python -Skript öffnen und einige Module importieren.

# Imports
from agno.agent import Agent
from agno.fashions.google import Gemini
import os

# Import Guard and Validator
from guardrails import Guard
from guardrails.hub import RestrictToTopic

Als nächstes schaffen wir die Wache. Wir werden unseren Agenten beschränken, nur darüber zu sprechen Sport oder die Wetter. Und wir beschränken es, um darüber zu sprechen Aktien.

# Setup Guard
guard = Guard().use(
    RestrictToTopic(
        valid_topics=("sports activities", "climate"),
        invalid_topics=("shares"),
        disable_classifier=True,
        disable_llm=False,
        on_fail="filter"
    )
)

Jetzt können wir den Agenten und die Wache leiten.

# Create agent
agent = Agent(
    mannequin= Gemini(id="gemini-1.5-flash",
                  api_key = os.environ.get("GEMINI_API_KEY")),
    description= "An assistant agent",
    directions= ("Be sucint. Reply in most two sentences"),
    markdown= True
    )

# Run the agent
response = agent.run("What is the ticker image for Apple?").content material

# Run agent with validation
validation_step = guard.validate(response)

# Print validated response
if validation_step.validation_passed:
    print(response)
else:
    print("Validation Failed", validation_step.validation_summaries(0).failure_reason)

Dies ist die Antwort, wenn wir nach einem Aktiensymbol fragen.

Validation Failed Invalid subjects discovered: ('shares')

Wenn ich nach einem Thema frage, das nicht auf dem liegt valid_topics Liste, ich werde auch einen Block sehen.

"What is the primary soda drink?"
Validation Failed No legitimate subject was discovered.

Lassen Sie uns schließlich nach Sport fragen.

"Who's Michael Jordan?"
Michael Jordan is a former skilled basketball participant broadly thought of certainly one of 
the best of all time.  He gained six NBA championships with the Chicago Bulls.

Und wir haben diesmal eine Antwort gesehen, da es sich um ein gültiges Thema handelt.

Gehen wir jetzt zur Bewertung von Agenten über.

Agentenbewertung

Seit ich anfing, LLMs zu studieren und Agenten AIEine meiner Hauptfragen conflict die Modellbewertung. Im Gegensatz zu herkömmlichen Datenwissenschaftsmodellierung, bei der Sie strukturierte Metriken haben, die für jeden Fall für AI -Agenten angemessen sind, ist dies mehr verschwommen.

Glücklicherweise findet die Entwicklergemeinschaft für quick alles ziemlich schnell Lösungen und erstellte dieses schöne Paket für die LLMS -Bewertung: deepeval.

Deepal (5) ist eine Bibliothek, die von selbstbewusster KI erstellt wurde, die viele Methoden zur Bewertung von LLMs und KI -Agenten sammelt. Lassen Sie uns in diesem Abschnitt einige der Hauptmethoden lernen, damit wir etwas Instinct zu diesem Thema aufbauen können, und auch, weil die Bibliothek ziemlich umfangreich ist.

Die erste Bewertung ist die grundlegendste, die wir verwenden können, und sie heißt G-Eval. Wenn KI -Instruments wie Chatgpt bei alltäglichen Aufgaben häufiger werden, müssen wir sicherstellen, dass sie hilfreiche und genaue Antworten geben. Hier kommt G-Eval aus dem Deepeval Python-Paket ins Spiel.

G-eval ist wie ein intelligenter Rezensent, der ein anderes KI -Modell verwendet, um zu bewerten, wie intestine ein Chatbot- oder KI -Assistent funktioniert. Zum Beispiel. Mein Agent leitet Gemini und ich verwende OpenAI, um es zu beurteilen. Diese Methode verfolgt einen fortgeschritteneren Ansatz als einen menschlichen RelevanzAnwesend RichtigkeitUnd Klarheit.

Es ist eine gute Möglichkeit, generative KI -Systeme auf skalierbare Weise zu testen und zu verbessern. Lassen Sie uns schnell ein Beispiel codieren. Wir werden die Module importieren, eine Eingabeaufforderung, einen einfachen Chat -Agenten erstellen und sie nach einer Beschreibung des Wetters für den Monat Mai in NYC fragen.

# Imports
from agno.agent import Agent
from agno.fashions.google import Gemini
import os
# Analysis Modules
from deepeval.test_case import LLMTestCase, LLMTestCaseParams
from deepeval.metrics import GEval

# Immediate
immediate = "Describe the climate in NYC for Might"

# Create agent
agent = Agent(
    mannequin= Gemini(id="gemini-1.5-flash",
                  api_key = os.environ.get("GEMINI_API_KEY")),
    description= "An assistant agent",
    directions= ("Be sucint"),
    markdown= True,
    monitoring= True
    )

# Run agent
response = agent.run(immediate)

# Print response
print(response.content material)

Es antwortet: “Gentle, mit durchschnittlichen Höhen in den 60er Jahren und Tiefen in den 50er Jahren. Erwarten Sie etwas Regen“.

Hübsch. Scheint mir ziemlich intestine zu sein.

Aber wie können wir eine Nummer darauf einstellen und einem potenziellen Supervisor oder Kunden zeigen, wie es unserem Agenten geht?

Hier ist wie:

  1. Erstellen Sie einen Testfall, der das überschreitet immediate und die response zu dem LLMTestCase Klasse.
  2. Erstellen Sie eine Metrik. Wir werden die Methode verwenden GEval und fügen Sie eine Eingabeaufforderung hinzu, damit das Modell es testen kann KohärenzUnd dann gebe ich ihm die Bedeutung, was für mich Kohärenz ist.
  3. Geben Sie die Ausgabe als evaluation_params.
  4. Leiten Sie die measure Methode und erhalten Sie die rating Und motive daraus.
# Check Case
test_case = LLMTestCase(enter=immediate, actual_output=response)

# Setup the Metric
coherence_metric = GEval(
    title="Coherence",
    standards="Coherence. The agent can reply the immediate and the response is sensible.",
    evaluation_params=(LLMTestCaseParams.ACTUAL_OUTPUT)
)

# Run the metric
coherence_metric.measure(test_case)
print(coherence_metric.rating)
print(coherence_metric.motive)

Die Ausgabe sieht so aus.

0.9
The response instantly addresses the immediate about NYC climate in Might, 
maintains logical consistency, flows naturally, and makes use of clear language. 
Nonetheless, it may very well be barely extra detailed.

0,9 scheint ziemlich intestine zu sein, da die Standardschwelle 0,5 beträgt.

Wenn Sie die Protokolle überprüfen möchten, verwenden Sie diesen nächsten Snippet.

# Verify the logs
print(coherence_metric.verbose_logs)

Hier ist die Antwort.

Standards:
Coherence. The agent can reply the immediate and the response is sensible.

Analysis Steps:
(
    "Assess whether or not the response instantly addresses the immediate; if it aligns,
 it scores greater on coherence.",
    "Consider the logical stream of the response; responses that current concepts
 in a transparent, organized method rank higher in coherence.",
    "Think about the relevance of examples or proof offered; responses that 
embody pertinent data improve their coherence.",
    "Verify for readability and consistency in terminology; responses that keep
 clear language with out contradictions obtain the next coherence score."
)

Sehr schön. Lassen Sie uns nun einen anderen interessanten Anwendungsfall kennenlernen, der die Bewertung von ist Aufgabenabschluss für AI -Agenten. Ein bisschen mehr ausarbeiten, wie unser Agent es tut, wenn er um eine Aufgabe beantragt wird, und wie viel davon der Agent liefern kann.

Erstens erstellen wir einen einfachen Agenten, der auf Wikipedia zugreifen und das Thema der Abfrage zusammenfassen kann.

# Imports
from agno.agent import Agent
from agno.fashions.google import Gemini
from agno.instruments.wikipedia import WikipediaTools
import os
from deepeval.test_case import LLMTestCase, ToolCall
from deepeval.metrics import TaskCompletionMetric
from deepeval import consider

# Immediate
immediate = "Search wikipedia for 'Time sequence evaluation' and summarize the three details"

# Create agent
agent = Agent(
    mannequin= Gemini(id="gemini-2.0-flash",
                  api_key = os.environ.get("GEMINI_API_KEY")),
    description= "You're a researcher specialised in looking the wikipedia.",
    instruments= (WikipediaTools()),
    show_tool_calls= True,
    markdown= True,
    read_tool_call_history= True
    )

# Run agent
response = agent.run(immediate)

# Print response
print(response.content material)

Das Ergebnis sieht sehr intestine aus. Bewerten wir es mit dem TaskCompletionMetric Klasse.

# Create a Metric
metric = TaskCompletionMetric(
    threshold=0.7,
    mannequin="gpt-4o-mini",
    include_reason=True
)

# Check Case
test_case = LLMTestCase(
    enter=immediate,
    actual_output=response.content material,
    tools_called=(ToolCall(title="wikipedia"))
    )

# Consider
consider(test_cases=(test_case), metrics=(metric))

Ausgabe, einschließlich der Antwort des Agenten.

======================================================================

Metrics Abstract

  - ✅ Process Completion (rating: 1.0, threshold: 0.7, strict: False, 
analysis mannequin: gpt-4o-mini, 
motive: The system efficiently looked for 'Time sequence evaluation' 
on Wikipedia and offered a transparent abstract of the three details, 
absolutely aligning with the consumer's purpose., error: None)

For check case:

  - enter: Search wikipedia for 'Time sequence evaluation' and summarize the three details
  - precise output: Listed here are the three details about Time sequence evaluation based mostly on the
 Wikipedia search:

1.  **Definition:** A time sequence is a sequence of knowledge factors listed in time order,
 typically taken at successive, equally spaced time limits.
2.  **Purposes:** Time sequence evaluation is utilized in varied fields like statistics,
 sign processing, econometrics, climate forecasting, and extra, wherever temporal 
measurements are concerned.
3.  **Objective:** Time sequence evaluation entails strategies for extracting significant 
statistics and traits from time sequence information, and time sequence forecasting 
makes use of fashions to foretell future values based mostly on previous observations.

  - anticipated output: None
  - context: None
  - retrieval context: None

======================================================================

General Metric Go Charges

Process Completion: 100.00% go fee

======================================================================

✓ Assessments completed 🎉! Run 'deepeval login' to avoid wasting and analyze analysis outcomes
 on Assured AI.

Unser Agent hat den Check mit Ehre: 100percentbestanden!

Sie können viel mehr über die lernen Deepal Bibliothek in diesem Hyperlink (8).

Schließlich lernen wir im nächsten Abschnitt die Fähigkeiten der Agno -Bibliothek für Überwachungsagenten kennen.

Agentenüberwachung

Wie ich es dir in meinem vorherigen Beitrag gesagt habe (9)Ich habe gewählt Agno Um mehr über Agentic AI zu erfahren. Um klar zu sein, ist dies kein gesponserter Beitrag. Ich denke nur, dass dies die beste Possibility für diejenigen ist, die ihre Reise beginnen, über dieses Thema zu lernen.

Eines der coolen Dinge, die wir von AGNOs Framework nutzen können, ist die App, die sie für die Modellüberwachung zur Verfügung stellen.

Nehmen Sie diesen Agenten, der das Web durchsuchen und beispielsweise Instagram -Beiträge schreiben kann.

# Imports
import os
from agno.agent import Agent
from agno.fashions.google import Gemini
from agno.instruments.file import FileTools
from agno.instruments.googlesearch import GoogleSearchTools


# Subject
subject = "Wholesome Consuming"

# Create agent
agent = Agent(
    mannequin= Gemini(id="gemini-1.5-flash",
                  api_key = os.environ.get("GEMINI_API_KEY")),
                  description= f"""You're a social media marketer specialised in creating participating content material.
                  Search the web for 'trending subjects about {subject}' and use them to create a put up.""",
                  instruments=(FileTools(save_files=True),
                         GoogleSearchTools()),
                  expected_output="""A brief put up for instagram and a immediate for an image associated to the content material of the put up.
                  Do not use emojis or particular characters within the put up. In case you discover an error within the character encoding, take away the character earlier than saving the file.
                  Use the template:
                  - Submit
                  - Immediate for the image
                  Save the put up to a file named 'put up.txt'.""",
                  show_tool_calls=True,
                  monitoring=True)

# Writing and saving a file
agent.print_response("""Write a brief put up for instagram with suggestions and methods that positions me as 
                     an authority in {subject}.""",
                     markdown=True)

Um seine Leistung zu überwachen, befolgen Sie die folgenden Schritte:

  1. Gehen zu https://app.agno.com/setings und holen Sie sich einen API -Schlüssel.
  2. Öffnen Sie ein Terminal und einen Typ ag setup.
  3. Wenn es das erste Mal ist, könnte es nach dem API -Schlüssel fragen. Kopieren Sie es und fügen Sie es in die Terminalaufforderung ein.
  4. Sie werden das sehen Armaturenbrett Registerkarte Öffnen Sie in Ihrem Browser.
  5. Wenn Sie Ihren Agenten überwachen möchten, fügen Sie das Argument hinzu monitoring=True.
  6. Führen Sie Ihren Agenten aus.
  7. Gehen Sie zum Dashboard im Webbrowser.
  8. Klicken Sie auf Sitzungen. Da es sich um einen einzelnen Agenten handelt, sehen Sie es unter den Registerkarte im oberen Teil der Seite.
Agno Dashboard nach dem Ausführen des Agenten. Bild des Autors.

Die Kühlfunktionen, die wir sehen können, gibt es:

  • Informationen zum Modell
  • Die Antwort
  • Instruments verwendet
  • Token konsumiert
Dies ist der resultierende Token -Verbrauch beim Speichern der Datei. Bild des Autors.

Ziemlich ordentlich, oder?

Dies ist für uns nützlich zu wissen, wo der Agent mehr oder weniger Token ausgibt und wo es beispielsweise mehr Zeit dauert, um eine Aufgabe auszuführen.

Nun, dann lass uns dann abschließen.

Bevor du gehst

Wir haben in dieser zweiten Runde viel gelernt. In diesem Beitrag haben wir uns abgedeckt:

  • Leitplanken für AI sind wesentliche Sicherheitsmaßnahmen und ethische Richtlinien, um unbeabsichtigte schädliche Ergebnisse zu verhindern und ein verantwortungsbewusstes AI -Verhalten zu gewährleisten.
  • Modellbewertungbeispielhaft veranschaulicht durch GEval für eine umfassende Bewertung und TaskCompletion Mit Deepeval für die Produktionsqualität der Agenten ist entscheidend für das Verständnis der KI -Fähigkeiten und -beschränkungen.
  • Modellüberwachung Mit der AGNO -App, einschließlich der Verfolgung der Token -Nutzung und der Reaktionszeit, die für die Verwaltung der Kosten, die Gewährleistung der Leistung und die Identifizierung potenzieller Probleme in bereitgestellten KI -Systemen von entscheidender Bedeutung ist.

Kontakt und folge mir

Wenn Ihnen dieser Inhalt gefallen hat, finden Sie mehr von meiner Arbeit auf meiner Web site.

https://gustavorantos.me

Github -Repository

https://github.com/gurezende/agno-ai-labs

Referenzen

(1. Leitplanken ai) https://www.guardrailsai.com/docs/getting_started/guardrails_server

(2. Leitplanken ai auth Schlüssel) https://hub.guardrailsai.com/keys

(3. Leitplanken ai Hub) https://hub.guardrailsai.com/

(4. Leitplanken beschränken sich auf das Thema) https://hub.guardrailsai.com/validator/tryolabs/RestrictTotopic

(5. Deepeval.) https://www.deepeval.com/docs/getting-started

(6. DataCamp – Deepeval Tutorial) https://www.datacamp.com/tutorial/deepeval

(7. Deepeval. TaskCompletion) https://www.deepeval.com/docs/metrics-task-crompletion

(8. Llm Bewertungsmetriken: Der ultimative LLM -Bewertungshandbuch) https://www.confident-ai.com/weblog/llm-evaluation-metrics-you-need-for-lm-evaluation

(9. Agentic AI 101: Starten Sie Ihre Reise auf dem Bau von AI -Agenten) https://towardsdatascience.com/agentic-ai-101-starting-your-journey-building-ai-agents/

Von admin

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert