Imagínese si pudiera automatizar la tediosa tarea de analizar informes de ganancias, extraer información esencia y hacer recomendaciones informadas, todo sin mover un dedo. En este artículo, le explicaremos cómo crear un sistema multiagente utilizando el ámbito Swarm de OpenAI, diseñado para manejar estas tareas exactas. Aprenderá a configurar y organizar tres agentes especializados: uno para resumir informes de ganancias, otro para analizar opiniones y un tercero para ocasionar recomendaciones prácticas. Al final de este tutorial, tendrá una alternativa modular y escalable para optimizar el investigación financiero, con aplicaciones potenciales más allá de los informes de ganancias.
Resultados de formación
- Comprender los fundamentos del ámbito Swarm de OpenAI para sistemas multiagente.
- Aprenda a crear agentes para resumir, investigación de sentimientoy recomendaciones.
- Explore el uso de agentes modulares para el investigación de informes de ganancias.
- Administre de forma segura las claves API mediante un archivo .env.
- Implementar un sistema multiagente para automatizar el procesamiento de informes de ganancias.
- Obtenga información sobre las aplicaciones del mundo vivo de los sistemas multiagente en finanzas.
- Configure y ejecute un flujo de trabajo de múltiples agentes utilizando el ámbito Swarm de OpenAI.
Este artículo fue publicado como parte del Blogatón de ciencia de datos.

¿Qué es el enjambre de OpenAI?
Enjambre es un ámbito empírico imprudente de OpenAI que se centra en la orquestación de múltiples agentes. Nos permite coordinar múltiples agentes, cada uno de los cuales maneja tareas específicas, como resumir contenido, realizar investigación de sentimientos o moralizar acciones. En nuestro caso, diseñaremos tres agentes:
- Agente de sumario: Proporciona un sumario conciso del mensaje de ganancias.
- Agente de sentimiento: Analiza el sentimiento del mensaje.
- Agente de recomendación: Recomienda acciones basadas en el investigación de sentimientos.
Casos de uso y beneficios de los sistemas multiagente
Puede ampliar el sistema multiagente creado aquí para varios casos de uso.
- Administración de cartera: Automatice el seguimiento de varios informes de la empresa y sugiera cambios en la cartera en función de las tendencias de sentimiento.
- Sumario de noticiario sobre finanzas: Integre fuentes de noticiario en tiempo vivo con estos agentes para detectar posibles movimientos del mercado de forma temprana.
- Seguimiento de sentimientos: Utilice el investigación de sentimiento para predecir movimientos bursátiles o tendencias criptográficas en función de noticiario positivas o negativas del mercado.
Al dividir las tareas en agentes modulares, puede reutilizar componentes individuales en diferentes proyectos, lo que permite flexibilidad y escalabilidad.
Paso 1: Configurar el entorno de su esquema
Antaño de sumergirnos en la codificación, es esencial sentar una colchoneta sólida para el esquema. En este paso, creará las carpetas y archivos necesarios e instalará las dependencias necesarias para que todo funcione sin problemas.
mkdir earnings_report
cd earnings_report
mkdir agents utils
touch main.py agents/__init__.py utils/__init__.py .gitignore
Instalar dependencias
pip install git+https://github.com/openai/swarm.git openai python-dotenv
Paso 2: almacene su esencia API de forma segura
La seguridad es esencia, especialmente cuando se trabaja con datos confidenciales como claves API. Este paso lo guiará sobre cómo juntar su esencia API OpenAI de forma segura utilizando un .env archivo, asegurando que sus credenciales estén sanas y salvas.
OPENAI_API_KEY=your-openai-api-key-here
Esto garantiza que su esencia API no esté expuesta en su código.
Paso 3: implementar los agentes
¡Ahora es el momento de darle vida a tus agentes! En este paso, creará tres agentes independientes: uno para resumir el mensaje de ganancias, otro para el investigación de opiniones y un tercero para ocasionar recomendaciones procesables basadas en la opinión.
Agente de sumario
El Agente de sumario extraerá los primeros 100 caracteres del mensaje de ganancias como sumario.
Crear agentes/summary_agent.py:
from swarm import Agent
def summarize_report(context_variables):
report_text = context_variables("report_text")
return f"Summary: {report_text(:100)}..."
summary_agent = Agent(
name="Summary Agent",
instructions="Summarize the key points of the earnings report.",
functions=(summarize_report)
)
Agente de sentimiento
Este agente comprobará si la palabra «beneficio» aparece en el mensaje para determinar si el sentimiento es positivo.
Crear agentes/sentiment_agent.py:
from swarm import Agent
def analyze_sentiment(context_variables):
report_text = context_variables("report_text")
sentiment = "positive" if "profit" in report_text else "negative"
return f"The sentiment of the report is: {sentiment}"
sentiment_agent = Agent(
name="Sentiment Agent",
instructions="Analyze the sentiment of the report.",
functions=(analyze_sentiment)
)
Agente de recomendación
Según el sentimiento, este agente sugerirá «Comprar» o «Apoyar».
Crear agentes/recommendation_agent.py:
from swarm import Agent
def generate_recommendation(context_variables):
sentiment = context_variables("sentiment")
recommendation = "Buy" if sentiment == "positive" else "Hold"
return f"My recommendation is: {recommendation}"
recommendation_agent = Agent(
name="Recommendation Agent",
instructions="Recommend actions based on the sentiment analysis.",
functions=(generate_recommendation)
)
Paso 4: agregue una función auxiliar para cargar archivos
Cargar datos de forma competente es una parte crítica de cualquier esquema. Aquí, creará una función auxiliar para facilitar el proceso de repaso y carga del archivo del mensaje de ganancias, facilitando a sus agentes el acercamiento a los datos.
def load_earnings_report(filepath):
with open(filepath, "r") as file:
return file.read()
Paso 5: unir todo en main.py
Con tus agentes listos, es hora de unir todo. En este paso, escribirá el pendón principal que organiza a los agentes, permitiéndoles trabajar en concordia para analizar y proporcionar información sobre el mensaje de ganancias.
from swarm import Swarm
from agents.summary_agent import summary_agent
from agents.sentiment_agent import sentiment_agent
from agents.recommendation_agent import recommendation_agent
from utils.helpers import load_earnings_report
import os
from dotenv import load_dotenv
# Load environment variables from the .env file
load_dotenv()
# Set the OpenAI API key from the environment variable
os.environ('OPENAI_API_KEY') = os.getenv('OPENAI_API_KEY')
# Initialize Swarm client
client = Swarm()
# Load earnings report
report_text = load_earnings_report("sample_earnings.txt")
# Run summary agent
response = client.run(
agent=summary_agent,
messages=({"role": "user", "content": "Summarize the report"}),
context_variables={"report_text": report_text}
)
print(response.messages(-1)("content"))
# Pass summary to sentiment agent
response = client.run(
agent=sentiment_agent,
messages=({"role": "user", "content": "Analyze the sentiment"}),
context_variables={"report_text": report_text}
)
print(response.messages(-1)("content"))
# Extract sentiment and run recommendation agent
sentiment = response.messages(-1)("content").split(": ")(-1).strip()
response = client.run(
agent=recommendation_agent,
messages=({"role": "user", "content": "Give a recommendation"}),
context_variables={"sentiment": sentiment}
)
print(response.messages(-1)("content"))
Paso 6: cree un mensaje de ganancias de muestra
Para probar su sistema, ¡necesita datos! Este paso le muestra cómo crear un mensaje de ganancias de muestra que sus agentes pueden procesar, asegurando que todo esté dinámico para la bono.
Company XYZ reported a 20% increase in profits compared to the previous quarter.
Sales grew by 15%, and the company expects continued growth in the next fiscal year.
Paso 7: ejecute el software
Ahora que todo está configurado, es hora de ejecutar el software y observar su sistema multiagente en bono mientras analiza el mensaje de ganancias, realiza investigación de sentimiento y ofrece recomendaciones.
python main.py
Resultado esperado:

Conclusión
Hemos creado una alternativa de múltiples agentes utilizando el ámbito Swarm de OpenAI para automatizar el investigación de los informes de ganancias. Podemos procesar información financiera y ofrecer recomendaciones prácticas con solo unos pocos agentes. Puede ampliar fácilmente esta alternativa agregando nuevos agentes para un investigación más profundo o integrando API financieras en tiempo vivo.
Pruébelo usted mismo y vea cómo puede mejorarlo con fuentes de datos o agentes adicionales para un investigación más liberal.
Conclusiones esencia
- Edificación modular: dividir el sistema en múltiples agentes y utilidades mantiene el código mantenible y escalable.
- Swarm Framework Power: Swarm permite transferencias fluidas entre agentes, lo que facilita la creación de flujos de trabajo complejos de múltiples agentes.
- Seguridad a través de .env: la gobierno de claves API con dotenv garantiza que los datos confidenciales no estén codificados en el esquema.
- Este esquema puede ampliarse para manejar datos financieros en vivo mediante la integración de API, lo que le permite saludar recomendaciones en tiempo vivo a los inversores.
Preguntas frecuentes
R. Swarm de OpenAI es un ámbito empírico diseñado para coordinar múltiples agentes para realizar tareas específicas. Es ideal para construir sistemas modulares donde cada agente tiene una función definida, como resumir contenido, realizar investigación de sentimientos o ocasionar recomendaciones.
R. En este tutorial, el sistema multiagente consta de tres agentes esencia: el Agente de sumario, el Agente de opinión y el Agente de recomendación. Cada agente realiza una función específica, como resumir un mensaje de ganancias, analizar su opinión o moralizar acciones basadas en la opinión.
R. Puede juntar su esencia API de forma segura en un .env archivo. De esta forma, la esencia API no queda expuesta directamente en su código, manteniendo la seguridad. El .env El archivo se puede cargar usando el python-dotenv paquete.
R. Sí, el esquema se puede ampliar para manejar datos en vivo mediante la integración de API financieras. Puede crear agentes adicionales para obtener informes de ganancias en tiempo vivo y analizar tendencias para saludar recomendaciones actualizadas.
R. Sí, los agentes están diseñados para ser modulares, por lo que puedes reutilizarlos en otros proyectos. Puede adaptarlos a diferentes tareas, como resumir artículos de noticiario, realizar investigación de sentimiento de texto o hacer recomendaciones basadas en cualquier forma de datos estructurados.
Los medios que se muestran en este artículo no son propiedad de Analytics Vidhya y se utilizan a discreción del autor.