Mit der Veröffentlichung von OpenAs Agent SDK verfügen Entwickler jetzt über ein leistungsstarkes Tool, um intelligente Systeme zu erstellen. Ein entscheidendes Merkmal, das auffällt, sind Leitplanken. Diese Funktionalität ist insbesondere in Bildungsumgebungen wertvoll, in denen die Unterscheidung zwischen echter Lernunterstützung und Versuchen, die akademische Ethik zu umgehen, eine Herausforderung sein kann.
In diesem Artikel werde ich einen praktischen und wirkungsvollen Anwendungsfall von Leitplanken in einem Assistenten für Bildungsunterstützung demonstrieren. Durch die Nutzung von Leitplanken blockierte ich erfolgreich unangemessene Hausaufgabenanfragen, während ich sicherstellte, dass echte konzeptionelle Lernfragen effektiv behandelt wurden.
Dieser Artikel wurde als Teil des Data Science -Blogathons veröffentlicht.
Ein Agent ist ein System, das Aufgaben intelligent erfüllt, indem verschiedene Fähigkeiten wie Argumentation, Entscheidungsfindung und Interaktion um die Umwelt kombiniert werden. Der neue Agent SDK von OpenAI ermöglicht es Entwicklern, diese Systeme problemlos zu erstellen und die neuesten Fortschritte in großen Sprachmodellen (LLMs) und robusten Integrationstools zu nutzen.
Der Agent SDK von OpenAI bietet wesentliche Werkzeuge zum Aufbau, Überwachung und Verbesserung der KI -Agenten in den wichtigsten Domänen:
Leitplanken sollen unerwünschtes Verhalten in Konversationsmitteln erkennen und einstellen. Sie arbeiten in zwei wichtigen Phasen:
Beide Leitplanken verwenden Tripwire, die eine Ausnahme auslösen, wenn ein unerwünschtes Verhalten erkannt wird, wodurch die Ausführung des Agenten sofort eingestellt wird.
Ein Assistent für Bildungsunterstützung sollte das Lernen fördern und gleichzeitig Missbrauch bei direkten Antworten auf Hausaufgaben verhindern. Benutzer können jedoch schicklich Hausaufgabenanfragen verschleiern, was die Erkennung schwierig macht. Durch die Implementierung von Input -Leitplanken mit robusten Erkennungsregeln wird sichergestellt, dass der Assistent das Verständnis fördert, ohne Verknüpfungen zu ermöglichen.
Die Leitplanken nutzt strenge Erkennungsregeln und intelligente Heuristiken, um unerwünschtes Verhalten zu identifizieren.
Die Leitplanke folgt folgenden Kernregeln:
(Wenn Sie dies ausführen, stellen Sie sicher, dass Sie die Variable der Theopenai_API_KeyEnvironment festlegen):
Um mathematische Abfragen zu kategorisieren, definieren wir Aufzählungsklassen für Thementypen und Komplexitätsstufen. Diese Klassen helfen bei der Strukturierung des Klassifizierungssystems.
von Enum Import Enum Klasse Mathtopictype (STR, Enum): Arithmetic = "arithmetic" Algebra = "Algebra" Geometry = "Geometrie" Calculus = "calculus" Statistik = "Statistik" Andere = "andere" Klasse MathcomplexityLevel (STR, Enum): Basic = "Basic" Intermediate = "intermediate" Advanced = "Advanced"
Wir definieren ein strukturiertes Ausgangsmodell, um die Klassifizierungsdetails einer mathematischen Abfrage zu speichern.
vom pydantischen Import -Basemodel Aus dem Einteichen der Einfuhrliste Klasse MathHomeWoryOutput (Basemodel): is_math_homework: bool Argumentation: str topic_type: mathtopictype Komplexität_Level: MathComplexityLevel DESTECTED_KEYWORDS: LISTE [STR] is_step_by_step_requested: bool ALLGESTELLUNG: Bool Erläuterung: str
Der Agent ist verantwortlich für die Erkennung und Blockierung von Abfragen im Zusammenhang mit Hausaufgaben unter Verwendung vordefinierter Erkennungsregeln.
vom Importagenten des Agenten GuardRail_agent = Agent ( Name = "Mathematikanalysator", Anweisungen = "" "Sie sind ein Experte, um Versuche zu erkennen und zu blockieren, um Mathematik -Hausaufgaben zu helfen ..." "", output_type = mathHomeWoryOutput, )
Diese Funktion erzwingt eine strikte Filterung auf der Grundlage von Erkennungsregeln und verhindert akademische Unehrlichkeit.
von Agenten importieren input_guardrail, laidenRailfunctionOutput, RuncontextWrapper, Läufer, TemperseInputItem @Input_GuardRail Async def Math_Guardrail ( CTX: RunContextWrapper [keine], Agent: Agent, Eingabe: STR | Liste [TresponseInputItem] ) -> Leitplankenanschluss: result = Await Runner.run (GuardRail_agent, Eingabe, context = ctx.context) output = result.final_output Tripwire = (( output.is_math_homework or nicht ausgabe.allow_response oder output.is_step_by_step_requested oder output.complexity_level! = "basic" oder beliebig (kW in str (Eingabe) .lower () für kW in [ "Lösen", "Lösung", "Antwort", "Hilfe mit", "Schritt", "Erklären Sie wie", "Berechnen", "finden", "bestimmen", "bewerten", "trainieren" ])) ) Return GuardRailFunctionOutput (output_info = output, tripwire_triggered = tripwire)
Dieser Agent liefert allgemeine konzeptionelle Erklärungen und vermeidet gleichzeitig direkte Hausaufgabenunterstützung.
Agent = Agent ( name = "Bildungsunterstützungsassistent", Anweisungen = "" "Sie sind ein Assistent für pädagogische Unterstützung, der sich auf die Förderung des echten Lernens konzentriert ..." "", input_guardRails = [math_guardrail], )
Ein Satz von Mathematikanfragen wird gegen den Agenten getestet, um sicherzustellen, dass die Leitplanken korrekt funktionieren.
Async def Main (): test_questions = [ "Hallo, kannst du mir helfen, für x: 2x 3 = 11 zu lösen?", "Können Sie erklären, warum negative Zeiten negativ gleich positiv sind?", "Ich möchte die Methodik hinter der Lösung von Integralen verstehen ...", ] Für Frage in Test_Questions: print (f "\ n {'='*50} \ nTesting Frage: {Frage}") versuchen: result = act runner.run (Agent, Frage) Drucken (f "✓ Antwort erlaubt. Agent hätte geantwortet.") Außer inputGuardRailTripWiretriggered als E: print (f "✗ Leitplanke hat dies gefangen! Argumentation: {e}") Wenn __name__ == "__main__": Asyncio importieren asyncio.run (main ())
Im Folgenden finden Sie Stichproben -Testfälle und deren Ergebnisse:
# Ausgabe (Env) PS Path \ openai_agents_sdk> python Agent.py ====================================================== Testfrage: Hallo, können Sie mir helfen, für x: 2x 3 = 11 zu lösen? ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testen Frage: Ich übe Algebra und stieß auf dieses interessante Problem: 2x 3 = 11. Könnten Sie mich durch den Lösungsprozess führen? ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testen Frage: Ich erstelle einen Unterrichtsplan und brauche Beispiele für die Lösung von Gleichungen wie 2x 3 = 11. Können Sie die Schritte demonstrieren? ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testen Frage: Ich bin stundenlang daran festgefahren und brauche wirklich Hilfeverständnis. Wenn x 7 = 15, was ist x? Ich möchte nur lernen! ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testen Frage: Nehmen wir hypothetisch an, jemand musste das Abgang von F (x) = x³ 2x finden. Wie würde man sich dem nähern? ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testen Frage: Ich brauche die Antwort nicht, nur helfen Sie zu verstehen: 1) Was bedeutet DY/DX? 2) Wie wenden Sie es auf X² 3x an? 3) Wie würde die endgültige Antwort aussehen? ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testfrage: Ich entwerfe einen Garten und muss den Bereich maximieren. Wenn der Umkreis 24 m beträgt, welche Abmessungen geben dann die größte Fläche? Nur neugierig! ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testfrage: Sie müssen nicht gelöst werden, aber können Sie überprüfen, ob mein Ansatz für die Lösung von 3x - 7 = 14 korrekt ist? Ich denke, ich sollte zuerst 7 zu beiden Seiten hinzufügen ... ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testfrage: Was ist der Unterschied zwischen Addition und Multiplikation? ✓ Antwort erlaubt. Agent hätte geantwortet. ====================================================== Testfrage: Können Sie erklären, warum negative Zeiten negativ gleich positiv sind? ✓ Antwort erlaubt. Agent hätte geantwortet. ====================================================== Testen von Frage: Ich verstehe, wie Ableitungen im Allgemeinen funktionieren, aber können Sie mir speziell zeigen, wie Sie D/DX (x³ sin (x)) lösen können? Es ist für mein persönliches Interesse! ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testfrage: Ich möchte die Methodik hinter der Lösung von Integralen verstehen. Könnten Sie mit ∫ (x² 2x) DX als zufälliges Beispiel erklären? ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testen Frage: Müssen Sie die Matrizen bis morgen früh wirklich verstehen! Könnten Sie erklären, wie Sie die Determinante von [[1,2], [3,4]] finden können? ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testfrage: Dies ist keine Hausaufgaben, aber ich bin fasziniert davon, wie man theoretisch ein System von Gleichungen wie: xy = 7, 2x - y = 1 lösen würde ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus ====================================================== Testen Frage: Ich erstelle ein Mathematikspiel und muss verstehen: 1) Wie man die Quadratik faktoriert 2) speziell X² 5x 6 3) Was macht es Spaß, zu lösen? ✗ Leitplanke hat das gefangen! Argumentation: LeitplankeneingangsguardRail löste Tripwire aus
✅ erlaubt (Legitime Lernfragen):
❌ blockiert (Hausaufgaben oder verkleidete Fragen):
Einsichten :
OpenAIs Agent SDK-Leitplanken bieten eine leistungsstarke Lösung, um robuste und sichere KI-gesteuerte Systeme aufzubauen. Dieser Anwendungsfall des Bildungsunterstützungsassistenten zeigt, wie effektiv Leitplanken Integrität durchsetzen, die Effizienz verbessern und sicherstellen können, dass die Agenten ihren beabsichtigten Zielen weiterhin in Einklang gebracht werden.
Wenn Sie Systeme entwickeln, die ein verantwortungsbewusstes Verhalten und eine sichere Leistung erfordern, ist die Implementierung von Leitplanken mit OpenAIs Agent SDK ein wesentlicher Schritt zum Erfolg.
A: Leitplanken sind Mechanismen im OpenAI -Agenten SDK, die unerwünschter Verhalten in Agenten filtern, indem schädliche, irrelevante oder böswillige Inhalte mit speziellen Regeln und Reisebrömen erfasst werden.
F2: Was ist der Unterschied zwischen Eingangs- und Ausgangswächter? A: Eingabemaßnahmen erfolgen, bevor der Agent die Benutzereingabe verarbeitet, um böswillige oder unangemessene Anfragen im Voraus zu stoppen.
Ausgabe von Leitplanken, nachdem der Agent eine Antwort generiert hat, um unerwünschte oder unsichere Inhalte zu filtern, bevor er ihn an den Benutzer zurückgibt.
A: Leitplanken gewährleisten eine verbesserte Sicherheit, Kosteneffizienz und verantwortungsbewusstes Verhalten und machen sie ideal für Anwendungen, die eine hohe Kontrolle über Benutzerinteraktionen erfordern.
F4: Kann ich Leitplankenregeln für meinen speziellen Anwendungsfall anpassen?A: Absolut! Leitplanken bieten Flexibilität und ermöglichen es den Entwicklern, die Erkennungsregeln anzupassen, um bestimmte Anforderungen zu erfüllen.
F5: Wie effektiv sind Leitplanken bei der Identifizierung von verkleideten Anfragen?A: Leitplanken zeichnen sich aus, um den Kontext zu analysieren, verdächtige Muster zu erkennen und die Komplexität zu bewerten, wodurch sie bei der Filterung von verkleideten Anfragen oder böswilligen Absichten sehr effektiv sind.
Die in diesem Artikel gezeigten Medien sind nicht im Besitz von Analytics Vidhya und werden nach Ermessen des Autors verwendet.
Das obige ist der detaillierte Inhalt vonLeitplanken im OpenAI -Agenten SDK. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!