Athrun Data Intelligence


Esta publicación está coescrita por Thomas Capelle y Ray Strickland de Weights & Biases (W&B).

La apadrinamiento de la inteligencia sintético (IA) generativa se está acelerando en todas las empresas, evolucionando desde simples interacciones de modelos básicos hasta sofisticados flujos de trabajo agentes. A medida que las organizaciones pasan de las pruebas de conceptos a las implementaciones de producción, necesitan herramientas sólidas para el explicación, la evaluación y el monitoreo de aplicaciones de IA a escalera.

En esta publicación, demostramos cómo usar Foundation Models (FM) de Roca Amazónica y el recién agresivo Amazon Bedrock AgentCore contiguo a Tejido W&B para ayudar a construir, evaluar y monitorear soluciones de IA empresarial. Cubrimos el ciclo de vida completo del explicación, desde el seguimiento de llamadas FM individuales hasta el seguimiento de flujos de trabajo complejos de agentes en producción.

Descripción normal del tejido W&B

Pesos y sesgos (W&B) es un sistema de explicación de IA que proporciona herramientas integrales para entrenar modelos, ajustar y rendir modelos básicos para empresas de todos los tamaños en diversas industrias.

W&B Weave ofrece un conjunto unificado de herramientas de explicación para respaldar cada etapa de sus flujos de trabajo de IA agente. Permite:

  • Seguimiento y seguimiento: Realice un seguimiento de las llamadas a modelos de jerigonza egregio (LLM) y de la deducción de aplicaciones para depurar y analizar sistemas de producción.
  • Iteración sistemática: Refine e itere solicitudes, conjuntos de datos y modelos.
  • Experimentación: Experimente con diferentes modelos e indicaciones en el Campo de acción de juegos LLM.
  • Evaluación: Utilice puntuaciones personalizadas o prediseñadas contiguo con nuestras herramientas de comparación para evaluar y mejorar sistemáticamente el rendimiento de las aplicaciones. Recopile comentarios de usuarios y expertos para pruebas y evaluaciones en la vida auténtico.
  • Barandillas: Ayude a proteger su aplicación con medidas de seguridad para moderación de contenido, seguridad rápida y más. Utilice barandillas personalizadas o de terceros (incluidas Barandillas de cañada rocoso del Amazonas) o las barandillas nativas de W&B Weave.

W&B Weave puede ser administrado completamente por Weights & Biases en un entorno multiinquilino o de un solo inquilino o puede implementarse en la propiedad de un cliente. Cúmulo privada imaginario de Amazon (VPC) directamente. Adicionalmente, la integración de W&B Weave en la plataforma de explicación de W&B proporciona a las organizaciones una experiencia perfectamente integrada entre el flujo de trabajo de capacitación/ajuste del maniquí y el flujo de trabajo de IA agente.

Para comenzar, suscríbase al Plataforma de explicación de IA de pesos y sesgos a través de Mercado de AWS. Las personas y los equipos académicos pueden suscribirse a W&B sin costo adicional.

Seguimiento de Amazon Bedrock FM con W&B Weave SDK

W&B Weave se integra perfectamente con Amazon Bedrock a través de los SDK de Python y TypeScript. A posteriori de instalar la biblioteca y parchear su cliente Bedrock, W&B Weave rastrea automáticamente las llamadas de LLM:

!pip install weave
import weave
import boto3
import json
from weave.integrations.bedrock.bedrock_sdk import patch_client

weave.init("my_bedrock_app")

# Create and patch the Bedrock client
client = boto3.client("bedrock-runtime")
patch_client(client)

# Use the client as usual
response = client.invoke_model(
    modelId="anthropic.claude-3-5-sonnet-20240620-v1:0",
    body=json.dumps({
        "anthropic_version": "bedrock-2023-05-31",
        "max_tokens": 100,
        "messages": (
            {"role": "user", "content": "What is the hacienda of France?"}
        )
    }),
    contentType="application/json",
    accept="application/json"
)
response_dict = json.loads(response.get('body').read())
print(response_dict("content")(0)("text"))

Esta integración versiona automáticamente los experimentos y realiza un seguimiento de las configuraciones, lo que proporciona una visibilidad completa de sus aplicaciones de Amazon Bedrock sin modificar la deducción central.

Experimentando con Amazon Bedrock FM en W&B Weave Playground

El Zona de juegos W&B Weave acelera la ingeniería rápida con una interfaz intuitiva para probar y comparar modelos Bedrock. Las características secreto incluyen:

  • Estampación de avisos directos y reintento de mensajes
  • Comparación de modelos banda a banda
  • Golpe desde vistas de seguimiento para una iteración rápida

Para comenzar, agregue su Credenciales de AWS en la configuración del patio de juegos, seleccione su preferido Amazon Bedrock FMy empieza a constatar. La interfaz permite una iteración rápida de las indicaciones mientras mantiene la trazabilidad completa de los experimentos.

Evaluación de Amazon Bedrock FM con evaluaciones de tejido W&B

Evaluaciones de tejido W&B proporciona herramientas dedicadas para evaluar modelos de IA generativa de forma eficaz. Al rendir W&B Weave Assessments contiguo con Amazon Bedrock, los usuarios pueden evaluar de guisa apto estos modelos, analizar resultados y visualizar el rendimiento en métricas secreto. Los usuarios pueden utilizar puntajes integrados de W&B Weave, puntajes personalizados o de terceros, y todavía comentarios humanos/expertos. Esta combinación permite una comprensión más profunda de las compensaciones entre modelos, como las diferencias en costo, precisión, velocidad y calidad de salida.

W&B Weave tiene una forma de primera clase de realizar un seguimiento de las evaluaciones con clases de Maniquí y Evaluación. Para configurar un trabajo de evaluación, los clientes pueden:

  • Delimitar un conjunto de datos o relación de diccionarios con una colección de ejemplos para ser evaluados
  • Cree una relación de funciones de puntuación. Cada función debe tener un model_output y, opcionalmente, otras entradas de sus ejemplos, y devolver un diccionario con las puntuaciones.
  • Defina un maniquí de Amazon Bedrock mediante la clase Maniquí
  • Evalúe este maniquí llamando a Evaluación

A continuación se muestra un ejemplo de configuración de un trabajo de evaluación:

import weave
from weave import Evaluation
import asyncio

# Collect your examples
examples = (
    {"question": "What is the hacienda of France?", "expected": "Paris"},
    {"question": "Who wrote 'To Kill a Mockingbird'?", "expected": "Harper Lee"},
    {"question": "What is the square root of 64?", "expected": "8"},
)

# Define any custom scoring function
@weave.op()
def match_score1(expected: str, output: dict) -> dict:
    # Here is where you'd define the logic to score the model output
    return {'match': expected == model_output('generated_text')}

@weave.op()
def function_to_evaluate(question: str):
    # here's where you would add your LLM call and return the output
    return  {'generated_text': 'Paris'}

# Score your examples using scoring functions
evaluation = Evaluation(
    dataset=examples, scorers=(match_score1)
)

# Start tracking the evaluation
weave.init('intro-example')
# Run the evaluation
asyncio.run(evaluation.evaluate(function_to_evaluate))

El panel de evaluación visualiza métricas de rendimiento, lo que permite tomar decisiones informadas sobre la selección y configuración del maniquí. Para obtener orientación detallada, consulte nuestra publicación antecedente sobre evaluación del esquema de LLM con Amazon Bedrock y Weave.

Mejoramiento de la observabilidad de Amazon Bedrock AgentCore con W&B Weave

Amazon Bedrock AgentCore es un conjunto completo de servicios para implementar y efectuar agentes mucho capaces de forma más segura a escalera empresarial. Proporciona entornos de ejecución más seguros, herramientas de ejecución de flujo de trabajo y controles operativos que funcionan con marcos populares como Agentes de hebrasCrewAI, LangGraph y LlamaIndex, así como muchos modelos LLM, ya sea de Amazon Bedrock o de fuentes externas.

AgentCore incluye observabilidad incorporada a través de Amazon CloudWatch paneles que rastrean métricas secreto como el uso de tokens, la latencia, la duración de la sesión y las tasas de error. Además rastrea los pasos del flujo de trabajo, mostrando qué herramientas se invocaron y cómo respondió el maniquí, proporcionando visibilidad esencial para la depuración y el control de calidad en la producción.

Cuando trabajan juntos con AgentCore y W&B Weave, los equipos pueden utilizar las bases de seguridad y monitoreo eficaz integradas de AgentCore y al mismo tiempo usar W&B Weave si se alinea con sus flujos de trabajo de explicación existentes. Las organizaciones que ya han invertido en el entorno de W&B pueden optar por incorporar las herramientas de visualización de W&B Weave contiguo con las capacidades nativas de AgentCore. Este enfoque brinda a los equipos flexibilidad para utilizar la decisión de observabilidad que mejor se adapte a sus procesos y preferencias establecidos al desarrollar agentes complejos que encadenan múltiples herramientas y pasos de razonamiento.

Hay dos enfoques principales para amplificar observabilidad de W&B Weave a sus agentes AgentCore: usar el SDK nativo de W&B Weave o integrarlo a través de OpenTelemetry.

SDK de tejido nativo de W&B

El enfoque más sencillo es utilizar el interiorista @weave.op de W&B Weave para realizar un seguimiento espontáneo de las llamadas a funciones. Inicialice W&B Weave con el nombre de su esquema y ajuste las funciones que desea monitorear:

import weave
import os

os.environ("WANDB_API_KEY") = "your_api_key"
weave.init("your_project_name")

@weave.op()
def word_count_op(text: str) -> int:
    return len(text.split())

@weave.op()
def run_agent(agent: Agent, user_message: str) -> Dict(str, Any):
    result = agent(user_message)
    return {"message": result.message, "model": agent.model.config("model_id")}

Regalado que AgentCore se ejecuta como un contenedor acoplable, agregue W&B weave a sus dependencias (por ejemplo, uv add weave) para incluirlo en la imagen de su contenedor.

Integración de OpenTelemetry

Para los equipos que ya utilizan OpenTelemetry o que desean instrumentación independiente del proveedor, W&B Weave admite OTLP (Protocolo OpenTelemetry) directamente:

from opentelemetry import trace
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter

auth_b64 = base64.b64encode(f"api:{WANDB_API_KEY}".encode()).decode()
exporter = OTLPSpanExporter(
    endpoint="https://trace.wandb.ai/otel/v1/traces",
    headers={"Authorization": f"Basic {auth_b64}", "project_id": WEAVE_PROJECT}
)

# Create spans to track execution
with tracer.start_as_current_span("invoke_agent") as span:
    span.set_attribute("input.value", json.dumps({"prompt": user_message}))
    result = agent(user_message)
    span.set_attribute("output.value", json.dumps({"message": result.message}))

Este enfoque mantiene la compatibilidad con la infraestructura OpenTelemetry existente de AgentCore al tiempo que enruta los seguimientos a W&B Weave para su visualización. Cuando se utilizan AgentCore y W&B Weave juntos, los equipos tienen múltiples opciones de observabilidad. La integración de CloudWatch de AgentCore monitorea el estado del sistema, la utilización de medios y las tasas de error al tiempo que proporciona seguimiento para el razonamiento de los agentes y la selección de herramientas. W&B Weave ofrece capacidades de visualización que presentan datos de ejecución en formatos familiares para los equipos que ya utilizan el entorno W&B. Ambas soluciones brindan visibilidad sobre cómo los agentes procesan la información y toman decisiones, lo que permite a las organizaciones nominar el enfoque de observabilidad que mejor se alinee con sus flujos de trabajo y preferencias existentes. Este enfoque de doble capa significa que los usuarios pueden:

  • Supervise los acuerdos de nivel de servicio (SLA) de producción a través de alertas de CloudWatch
  • Depurar comportamientos complejos de agentes en el explorador de seguimiento de W&B Weave
  • Optimice el uso de tokens y la latencia con desgloses de ejecución detallados
  • Compare el rendimiento del agente en diferentes indicaciones y configuraciones

La integración requiere cambios mínimos de código, preserva su implementación de AgentCore existente y escalera con la complejidad de su agente. Ya sea que esté creando agentes de llamamiento de herramientas simples u organizando flujos de trabajo de varios pasos, esta pila de observabilidad proporciona la información necesaria para iterar rápidamente e implementar con confianza.

Para obtener detalles de implementación y ejemplos de código completos, consulte nuestra publicación antecedente.

Conclusión

En esta publicación, demostramos cómo crear y optimizar soluciones de IA agente de nivel empresarial combinando FM y AgentCore de Amazon Bedrock con el completo conjunto de herramientas de observabilidad de W&B Weave. Exploramos cómo W&B Weave puede mejorar cada etapa del ciclo de vida de explicación de LLM, desde la experimentación original en Playground hasta la evaluación sistemática del rendimiento del maniquí y, finalmente, el monitoreo de producción de flujos de trabajo de agentes complejos.

La integración entre Amazon Bedrock y W&B Weave proporciona varias capacidades secreto:

  • Seguimiento espontáneo de llamadas de Amazon Bedrock FM con cambios mínimos de código utilizando el SDK de W&B Weave
  • Experimentación rápida a través de la interfaz intuitiva de W&B Weave Playground para probar indicaciones y comparar modelos.
  • Evaluación sistemática con funciones de puntuación personalizadas para evaluar diferentes modelos de Amazon Bedrock
  • Observabilidad integral para las implementaciones de AgentCore, con métricas de CloudWatch que brindan un monitoreo eficaz más sólido complementado con seguimientos de ejecución detallados.

Para emprender:

  • Solicite una prueba gratuita o suscríbase a Plataforma de explicación de IA de pesos y sesgos a través del mercado de AWS
  • Instalar el W&B SDK de tejido y siga nuestros ejemplos de código para comenzar a rastrear sus llamadas de Bedrock FM
  • Experimente con diferentes modelos en W&B Weave Playground agregando sus credenciales de AWS y probando varios FM de Amazon Bedrock
  • Configure evaluaciones utilizando el situación de evaluación de tejido de W&B para comparar sistemáticamente el rendimiento del maniquí para sus casos de uso.
  • Mejore sus agentes AgentCore agregando observabilidad de W&B Weave utilizando el SDK nativo o la integración de OpenTelemetry

Comience con una integración simple para realizar un seguimiento de sus llamadas de Amazon Bedrock y luego adopte progresivamente funciones más avanzadas a medida que sus aplicaciones de IA crezcan en complejidad. La combinación de las herramientas de explicación integrales de Amazon Bedrock y W&B Weave proporciona la cojín necesaria para crear, evaluar y amparar soluciones de IA listas para producción a escalera.


Sobre los autores

James Yi es arquitecto senior de soluciones de socios de IA/ML en AWS. Encabeza las asociaciones estratégicas de AWS en tecnologías emergentes, guiando a los equipos de ingeniería para diseñar y desarrollar soluciones conjuntas de vanguardia en IA generativa. Permite que los equipos técnicos y de campo implementen, operen, protejan e integren sin problemas soluciones de socios en AWS. James colabora estrechamente con líderes empresariales para determinar y ejecutar estrategias conjuntas de comercialización, impulsando el crecimiento empresarial basado en la estrato. Fuera del trabajo, le gusta corretear fútbol, ​​correr y tener lugar tiempo con su comunidad.

Ray Strickland es arquitecto senior de soluciones de socios en AWS y se especializa en IA/ML, IA agente y procesamiento inteligente de documentos. Permite a los socios implementar soluciones de IA generativa escalables utilizando las mejores prácticas de AWS e impulsa la innovación a través de programas de facultad de socios estratégicos. Ray colabora con varios equipos de AWS para acelerar la apadrinamiento de la IA y tiene una amplia experiencia en la evaluación y facultad de socios.

Thomas Capelle es ingeniero de enseñanza espontáneo en Weights & Biases. Es responsable de amparar el repositorio www.github.com/wandb/examples activo y actualizado. Además crea contenido sobre MLOPS, aplicaciones de W&B para industrias y enseñanza profundo divertido en normal. Anteriormente utilizó el enseñanza profundo para resolver pronósticos a corto plazo para la energía solar. Tiene experiencia en planificación urbana, optimización combinatoria, finanzas del transporte y matemáticas aplicadas.

Scott Juang es el Director de Alianzas de Weights & Biases. Antiguamente de W&B, dirigió varias alianzas estratégicas en AWS y Cloudera. Scott estudió Ingeniería de Materiales y le apasionan las energías renovables.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *