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
Logfire Mirascope Anthropic Call (Englisch)
Mirascope Anthropic Call Span und Anthropic Span und Konversation

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
Logfire Mirascope Anthropic Call (Englisch)
Mirascope OpenAI Extractor span and OpenAI span and function call
(OpenAI Extractor span und OpenAI Span und Funktion aufrufen)

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 .


本文总阅读量次