Mirascope
Mirascope ist ein intuitiver Ansatz zum Erstellen von KI-gesteuerten Anwendungen mit LLMs und ihre Bibliothek ist in Logfire integriert , um die Beobachtbarkeit und Überwachung von LLMs einfach und nahtlos zu machen .
Sie können es mit ihrem @with_logire-Dekorator aktivieren , der für alle von ihnen unterstützten Modellanbieter (z . B . OpenAI , Anthropic , Groq usw .) funktioniert .
import logfire
from mirascope.logfire import with_logfire
from mirascope.anthropic import AnthropicCall
logfire.configure()
@with_logfire
class BookRecommender(AnthropicCall):
prompt_template = "Please recommend some {genre} books"
genre: str
recommender = BookRecommender(genre="fantasy")
response = recommender.call() # this will automatically get logged with logfire
print(response.content)
#> Here are some recommendations for great fantasy book series: ...
Das wird dir geben :
- umgibt die Spanne von
AnthropicCall.call()und erfasst Elemente wie Eingabeaufforderungen , Vorlageneigenschaften und - felder sowie Eingabe -/Ausgabeeigenschaften . - Vom Menschen lesbare Gespräche mit dem Agenten zeigen
- Details der Antwort , einschließlich der Anzahl der verwendeten Token
Da Mirascope auf Pydantic aufbaut , können Sie das Pydantic-Plugin verwenden , um andere Logs und Metriken zur Modellvalidierung zu verfolgen , die Sie mit [verwenden können . von pydantic_plugin ][logfire.configure(pydantic_plugin)] ist so konfiguriert , dass es aktiviert wird .
Dies kann besonders nützlich sein , wenn Sie LLMs zum Extrahieren strukturierter Informationen verwenden :
from typing import Literal, Type
import logfire
from mirascope.logfire import with_logfire
from mirascope.openai import OpenAIExtractor
from pydantic import BaseModel
logfire.configure(pydantic_plugin=logfire.PydanticPlugin(record="all"))
class TaskDetails(BaseModel):
description: str
due_date: str
priority: Literal["low", "normal", "high"]
@with_logfire
class TaskExtractor(OpenAIExtractor[TaskDetails]):
extract_schema: Type[TaskDetails] = TaskDetails
prompt_template = """
Extract the task details from the following task:
{task}
"""
task: str
task = "Submit quarterly report by next Friday. Task is high priority."
task_details = TaskExtractor(
task=task
).extract() # this will be logged automatically with logfire
assert isinstance(task_details, TaskDetails)
print(task_details)
#> description='Submit quarterly report' due_date='next Friday' priority='high'
Das wird dir geben :
- Nachverfolgung des Pydantischen Modells
- umgibt die Spanne von
OpenAIExtractor.extract()und erfasst Elemente wie Eingabeaufforderungen , Vorlageneigenschaften und - felder sowie Eingabe -/Ausgabeeigenschaften . - Eine lesbare Darstellung von Gesprächen mit einem Agenten , einschließlich Funktionsaufrufen
- Details zu den Antworten , einschließlich der Anzahl der verwendeten Token
Mirascope OpenAI Extractor Span und OpenAI Span sowie Funktionsaufrufe
[ mirascope-logfire ] oder :https://docs.mirascope.io/latest/integrations/logfire/#how-to-use-logfire-with-mirascope [ mirascope-supported - providers ] (unterstützt durch :https://docs.mirascope.io/latest/concepts/supported_llm_providers/ [ mirascope-extracting - structure-information - Informationen ] :https://docs.mirascope.io/latest/concepts/extracting_structured_information_using_llms/ [ bearbeiten ] :https://pydantic.com.cn/ Das Plug-in [ … ]https://pydantic.com.cn/concepts/plugins/
Weitere Informationen zu Mirascope und was Sie damit machen können , finden Sie in der Dokumentation .
本文总阅读量次