
Miniutogen adalah perpustakaan open-source yang inovatif yang dirancang untuk generasi aplikasi berikutnya dalam model bahasa besar (LLM). Berfokus pada memungkinkan percakapan multi-agen, miniutogen dirayakan karena strukturnya yang ringan dan fleksibel. Ini sangat ideal untuk pengembang dan peneliti yang bertujuan untuk mengeksplorasi dan memperluas perbatasan AI percakapan.
Menggambar inspirasi dari autogen, miniutogen menawarkan rangkaian alat yang komprehensif:
chat ): Memfasilitasi penciptaan dan manajemen percakapan multi-agen.chatadmin ): Memastikan sinkronisasi dan manajemen agen yang efisien.agent ): Memberikan fleksibilitas untuk menyesuaikan agen sesuai dengan kebutuhan spesifik.pipeline ): Otomatis dan merampingkan operasi agen, meningkatkan skalabilitas dan pemeliharaan.Menggabungkan litellm, miniutogen sudah terintegrasi dengan lebih dari 100 llms. Gunakan Bedrock, Azure, Openai, Cohere, Anthropic, Ollama, Sagemaker, Huggingface, Replicate.
agent .Jelajahi bermacam-macam komponen pra-dibangun kami, tersedia di sini.
Pasang pip install miniautogen
Iniciate obrolan dengan llm
#Initializing LLM Clients
import os
os.environ["OPENAI_API_KEY"] = "your-openai-key"
from miniautogen.llms.llm_client import LiteLLMClient
openai_client = LiteLLMClient(model='gpt-3.5-turbo-16k')
# Building the Chat Environment
from miniautogen.chat.chat import Chat
from miniautogen.agent.agent import Agent
from miniautogen.chat.chatadmin import ChatAdmin
from miniautogen.pipeline.pipeline import Pipeline
from miniautogen.pipeline.components.components import (
UserResponseComponent, AgentReplyComponent, TerminateChatComponent,
Jinja2SingleTemplateComponent, LLMResponseComponent, NextAgentSelectorComponent
)
# Define a Jinja2 template for formatting messages
template_str = """
[{"role": "system", "content": "{{ agent.role }}"}{% for message in messages %},
{% if message.sender_id == agent.agent_id %}
{"role": "assistant", "content": {{ message.message | tojson | safe }}}
{% else %}
{"role": "user", "content": {{ message.message | tojson | safe }}}
{% endif %}
{% endfor %}]
"""
# Initialize Jinja2 component with the template
jinja_component = Jinja2SingleTemplateComponent()
jinja_component.set_template_str(template_str)
# Set up pipelines for different components
pipeline_user = Pipeline([UserResponseComponent()])
pipeline_jinja = Pipeline([jinja_component, LLMResponseComponent(litellm_client)])
pipeline_admin = Pipeline([NextAgentSelectorComponent(), AgentReplyComponent(), TerminateChatComponent()])
# Create the chat environment
chat = Chat()
# Define agents with JSON data
json_data = {'agent_id': 'Bruno', 'name': 'Bruno', 'role': 'user'}
agent1 = Agent.from_json(json_data)
agent1.pipeline = pipeline_user # Assign the user pipeline to agent1
agent2 = Agent("dev", "Carlos", "Python Senior Developer")
agent2.pipeline = pipeline_jinja # Assign the LLM pipeline to agent2
# Add agents to the chat
chat.add_agent(agent1)
chat.add_agent(agent2)
# Add test messages to the chat
json_messages = [{'sender_id': 'Bruno', 'message': 'It’s a test, don’t worry'}]
chat.add_messages(json_messages)
# Initialize and configure ChatAdmin
chat_admin = ChatAdmin("admin", "Admin", "admin_role", pipeline_admin, chat, 10)
#running the chat
chat_admin.run()
Percakapan multi-agen mewakili interaksi yang melibatkan banyak agen, baik otonom atau manusia, masing-masing diberkahi dengan otonomi dan kemampuan khusus. Mereka bekerja sama untuk memecahkan masalah yang kompleks, berbagi informasi, atau melakukan tugas -tugas tertentu.
Dalam contoh ini, kami akan membuat percakapan antara dua agen: satu berperan sebagai pemilik produk dan yang lainnya bertindak sebagai ahli dalam mengembangkan komponen miniutogen di Python.
Tujuan utama dari tes ini adalah untuk menunjukkan fleksibilitas, kemudahan, dan efisiensi miniutogen dalam menciptakan dan mengoordinasikan percakapan multi-agen, serta kesederhanaan dalam mengembangkan komponen baru, berkat desain fleksibel perpustakaan.
Riwayat percakapan lengkap: chat_history.md
Lihat buku catatan di sini
Untuk wawasan dan inspirasi tambahan, kunjungi folder contoh kami. Di sini, Anda akan menemukan berbagai skenario yang menunjukkan keserbagunaan dan kemampuan miniutogen dalam konteks yang berbeda.
Kami mengundang penggemar AI, pengembang, dan peneliti untuk berkontribusi dan membentuk masa depan percakapan multi-agen. Keahlian Anda dapat membantu mengembangkan miniutogen, menciptakan aplikasi yang lebih kuat dan beragam.
Lihat lebih lanjut: Kontribusi
Miniutogen: Memelopori masa depan percakapan yang cerdas dan interaktif.