
Gabungan Meta's Model Llama 4 dengan Microsoft's Rangka kerja AutoGen membuka kemungkinan baharu untuk mencipta pintar, cekap AI ejen. Teknologi ini, apabila digabungkan, membolehkan pembangun membina aplikasi yang boleh memproses bahasa semula jadi, memahami imej, menaakul melalui masalah yang rumit dan bekerjasama dengan ejen lain untuk menyelesaikan tugas.
nyala api 4 membawa keupayaan multimodal yang mengagumkan dan tingkap konteks yang luas, manakala AutoGen menyediakan rangka kerja berstruktur untuk mengatur berbilang ejen dalam aliran kerja kolaboratif. Bersama-sama, mereka membentuk kit alat yang berkuasa untuk generasi akan datang AI permohonan.
Panduan ini berjalan melalui proses bangunan AI ejen menggunakan alat ini, dengan contoh kod praktikal dan strategi pelaksanaan untuk pembangun semua peringkat kemahiran.
Apa yang membuat nyala api 4 dan AutoGen Padanan Sempurna?
meta's Keluarga Llama 4 menonjol dalam AI dunia dengannya keupayaan multimodal asli dan pendekatan gabungan awal. Apabila digabungkan dengan AutoGen—microsoft's rangka kerja untuk membina sistem berbilang agen perbualan—pemaju boleh mencipta AI ejen yang menaakul, bekerjasama dan menyesuaikan diri dengan cekap.
Model Llama 4, termasuk varian Scout dan Maverick, menawarkan pemprosesan multimodal gabungan awal yang menganggap teks, imej dan bingkai video sebagai satu jujukan token dari mula. Keupayaan ini, dipasangkan dengan AutoGen's seni bina ejen yang fleksibel, membolehkan penciptaan AI sistem yang boleh:
Mari's bina sistem berbilang ejen praktikal yang menunjukkan keupayaan ini dengan mencipta penjana cadangan projek yang menganalisis keperluan pelanggan dan menjana cadangan kerja tersuai.
Membina Praktikal AI Sistem Agen
Mari's cipta sistem berbilang ejen yang membantu pekerja bebas menjana cadangan pekerjaan yang disesuaikan. Sistem kami akan:
- Kumpul keperluan pelanggan
- Kumpulkan kelayakan pekerja bebas
- Hasilkan cadangan profesional dengan harga yang sesuai.
Langkah 0: Sediakan Persekitaran Anda
Pertama, pasang pakej yang diperlukan:
ular sawa
pip pasang autogen-agentchat~=0.2
pip pasang ipython

Langkah 1: Mengkonfigurasi Akses API
Kami akan menggunakan API Bersama untuk mengakses Llama 4:
python
import os
import autogen
from IPython.display import display, Markdown
# Load API key from file
with open("together_ai_api.txt") as file:
LLAMA_API_KEY = file.read().strip()
os.environ["LLAMA_API_KEY"] = LLAMA_API_KEY
# Configure LLM settings
llm_config = {
"config_list": [
{
"model": "meta-llama/Llama-4-Scout", # Use Scout for efficiency
"api_key": os.environ.get("LLAMA_API_KEY"),
"base_url": "https://api.together.xyz/v1",
}
],
"temperature": 0.2, # Lower for more consistent outputs
"timeout": 180
}
Langkah 2: Mencipta Ejen Khusus
Sistem kami memerlukan tiga ejen berbeza dengan peranan khusus:
Ejen Input Pelanggan
python
# Agent 1: Interfaces with the human user
client_agent = autogen.UserProxyAgent(
name="Client_Input_Agent",
human_input_mode="ALWAYS", # Always gets input from human
max_consecutive_auto_reply=1,
is_termination_msg=lambda x: x.get("content", "").rstrip().endswith("TERMINATE"),
system_message="""Act as the primary contact between the human user and other agents.
First, collect initial project details (requirements, timeline, budget).
When asked questions by the Scope Architect, relay user's answers about skills and experience.
Type TERMINATE when the proposal is satisfactory or the user wants to stop."""
)
Ejen ini berfungsi sebagai jambatan antara pengguna manusia dan AI sistem, mengumpul maklumat dan membentangkan hasil akhir.
Ejen Arkitek Skop
python
# Agent 2: Analyzes requirements and asks qualifying questions
scope_architect_agent = autogen.AssistantAgent(
name="Scope_Architect",
llm_config=llm_config,
max_consecutive_auto_reply=1,
system_message="""You are a Scope Architect who analyzes project requirements.
After receiving initial details from Client_Input_Agent, ask targeted questions about:
- The freelancer's relevant past projects and experience
- Their key skills and tools for this specific project
- Estimated completion time for the described work
Once you have sufficient information, create a concise summary of BOTH
the project requirements AND freelancer qualifications for the Rate Recommender."""
)
Arkitek Skop berfungsi sebagai penganalisis keperluan, mengumpulkan maklumat penting yang diperlukan untuk cadangan yang tepat.
Ejen Pengesyor Kadar
python
# Agent 3: Creates structured proposal with pricing
rate_recommender_agent = autogen.AssistantAgent(
name="Rate_Recommender",
llm_config=llm_config,
max_consecutive_auto_reply=1,
system_message="""Generate professional project proposals based on gathered information.
Wait for the Scope Architect's complete summary before proceeding.
Include these sections in your proposal:
1. Custom Introduction: Personalized greeting referencing client and project
2. Project Scope & Timeline: Clear deliverables with timeline estimates
3. Pricing Options: 2-3 tiers (hourly/fixed/retainer) with justification
4. Next Steps: Brief suggestion for kickoff discussion
Format using proper markdown. Avoid commentary - deliver only the final proposal."""
)
Ejen ini menghasilkan penghantaran akhir, mengubah maklumat yang dikumpul menjadi cadangan berstruktur.
Langkah 3: Buat Ejen Pembantu (Pilihan)
python
# Optional helper to initiate the conversation
user_proxy = autogen.UserProxyAgent(
name="user_proxy",
max_consecutive_auto_reply=1,
llm_config=llm_config,
system_message="Initiate the conversation between agents."
)
Langkah 4: Sediakan Sembang Kumpulan
Kini kami akan mewujudkan persekitaran perbualan di mana ejen boleh bekerjasama:
python
# Group Chat Configuration
groupchat = autogen.GroupChat(
agents=[client_agent, scope_architect_agent, rate_recommender_agent],
messages=[],
max_round=4, # Prevent infinite loops
speaker_selection_method="round_robin", # Orderly participation
)
# Conversation Manager
manager = autogen.GroupChatManager(
groupchat=groupchat,
llm_config=llm_config,
system_message="""Direct the conversation flow through these steps:
1. Client_Input_Agent shares project details
2. Scope_Architect asks qualifying questions
3. Client_Input_Agent provides freelancer information
4. Scope_Architect summarizes all information
5. Rate_Recommender creates the final proposal
End when the proposal is complete or Client_Input_Agent says TERMINATE."""
)
Persediaan ini memastikan aliran perbualan yang teratur dengan peranan dan tanggungjawab yang jelas.
Langkah 5: Memulakan Perbualan
Mari's mulakan aliran kerja ejen kami:
python
# Begin the proposal generation process
print("Starting the proposal generation process...")
print("Please provide project details when prompted.")
initial_message = """
Begin the proposal creation process:
1. First collect project details from the user
2. Then gather freelancer qualifications
3. Finally generate a professional proposal
"""
user_proxy.initiate_chat(
manager,
message=initial_message
)
Langkah 6: Mengeluarkan Cadangan Akhir
Setelah perbualan selesai, kami akan mengekstrak dan memaparkan cadangan akhir:
python
# Find and display the proposal
chat_history = manager.chat_messages[client_agent]
final_proposal = None
for msg in reversed(chat_history):
if msg.get("role") == "assistant" and msg.get("name") == rate_recommender_agent.name:
if "Introduction" in msg.get("content", ""):
final_proposal = msg
break
if final_proposal:
proposal_text = final_proposal.get("content", "Proposal not found.")
try:
display(Markdown(proposal_text))
except NameError:
print("\n--- FINAL PROPOSAL ---\n")
print(proposal_text)
else:
print("Could not find the final proposal in the conversation.")
Teknik Dipertingkatkan untuk Membina Lebih Baik AI Ejen

Walaupun pelaksanaan asas kami berfungsi dengan baik, berikut ialah beberapa pendekatan lanjutan untuk menjadikan anda AI ejen yang lebih berkuasa:
A.Penyepaduan Alat Luaran
Salah satu kekuatan AutoGen ialah keupayaan untuk melengkapkan ejen dengan alatan luaran. Berikut ialah cara untuk memberikan keupayaan kajian pasaran kepada Rate Recommender anda :
python
# Define function for market research
def research_market_rates(job_type, experience_level):
"""Access external data for pricing information"""
# This would typically connect to an API or database
# Using simple dictionary for demonstration
rate_data = {
"web_development": {
"beginner": "$30-50/hr",
"intermediate": "$50-90/hr",
"expert": "$90-200/hr"
},
"data_analysis": {
"beginner": "$25-45/hr",
"intermediate": "$45-85/hr",
"expert": "$85-180/hr"
}
}
# Retrieve appropriate rate range
try:
return rate_data[job_type][experience_level]
except KeyError:
return "Rate information not available for this combination"
# Configure LLM with function
rate_recommender_config = {
**llm_config,
"functions": [
{
"name": "research_market_rates",
"description": "Find current market rates for specific job types and experience levels",
"parameters": {
"type": "object",
"properties": {
"job_type": {
"type": "string",
"enum": ["web_development", "data_analysis", "content_writing", "graphic_design"]
},
"experience_level": {
"type": "string",
"enum": ["beginner", "intermediate", "expert"]
}
},
"required": ["job_type", "experience_level"]
}
}
]
}
# Update the Rate Recommender with function capabilities
rate_recommender_agent = autogen.AssistantAgent(
name="Rate_Recommender",
llm_config=rate_recommender_config,
system_message="""Generate proposals with accurate market-based pricing.
Use the research_market_rates function to get current pricing information."""
)
# Register the function with the agent
rate_recommender_agent.register_function(
function_map={"research_market_rates": research_market_rates}
)
Peningkatan ini membolehkan Pengesyor Kadar mengakses data harga luaran, menjadikan cadangan lebih tepat dan berdaya saing.
B. Pelaksanaan Ingatan Berterusan
Menambah keupayaan memori membantu ejen mengekalkan konteks merentas pelbagai interaksi:
python
# Create a simple memory system for agents
class AgentMemory:
def __init__(self):
self.memories = {}
def store(self, agent_name, key, value):
"""Save information to agent memory"""
if agent_name not in self.memories:
self.memories[agent_name] = {}
self.memories[agent_name][key] = value
def retrieve(self, agent_name, key=None):
"""Get information from agent memory"""
if agent_name not in self.memories:
return None
if key:
return self.memories[agent_name].get(key)
else:
return self.memories[agent_name]
# Initialize memory
memory = AgentMemory()
# Example of storing client information
def process_client_input(message):
"""Extract and store client information"""
# This would typically use more sophisticated parsing
if "budget:" in message.lower():
budget = message.split("budget:")[1].strip().split("\n")[0]
memory.store("client", "budget", budget)
if "timeline:" in message.lower():
timeline = message.split("timeline:")[1].strip().split("\n")[0]
memory.store("client", "timeline", timeline)
return message
# Add memory hook to client agent
def memory_hook(recipient, messages, sender, config):
"""Process and store incoming messages"""
if sender.name == "Client_Input_Agent" and messages:
process_client_input(messages[0].get("content", ""))
return False, None # Continue normal processing
# Register the hook
client_agent.register_hook("memory_hook", memory_hook)
Sistem ingatan ini membantu ejen mengingat maklumat penting sepanjang perbualan, walaupun tidak disebut secara eksplisit dalam mesej baru-baru ini.
Aplikasi Praktikal Melangkaui Penjanaan Cadangan
Seni bina yang telah kami bina boleh disesuaikan dengan banyak senario perniagaan lain:
A. Saluran Paip Penciptaan Kandungan
Ubah suai ejen kami untuk mengendalikan aliran kerja pengeluaran kandungan:
B. Sistem Analisis SEO
Buat alat SEO khusus dengan ejen ini:
C. Automasi Sokongan Pelanggan
Mengubah seni bina menjadi sistem sokongan:
Petua Pengoptimuman Prestasi
Untuk pengeluaran-siap AI sistem ejen:
- Pemilihan model pintar: Gunakan model ringan untuk tugasan yang lebih mudah (pengambilan, penghalaan) dan simpan model yang lebih besar untuk penaakulan yang kompleks (penciptaan cadangan, penetapan harga).
- Laksanakan caching: Simpan respons yang kerap untuk mengurangkan panggilan API dan meningkatkan masa respons:
python
# Simple cache implementation
response_cache = {}
def get_cached_response(query_key, generator_function, ttl=3600):
"""Get cached response or generate new one"""
if query_key in response_cache:
timestamp, response = response_cache[query_key]
if time.time() - timestamp < ttl:
return response
# Generate fresh response
new_response = generator_function()
response_cache[query_key] = (time.time(), new_response)
return new_response
Pemprosesan kelompok: Untuk tugasan bebas, proseskannya secara selari dan bukannya secara berurutan:
python
import asyncio
async def run_parallel_research():
task1 = asyncio.create_task(research_agent.async_run("Research topic A"))
task2 = asyncio.create_task(research_agent.async_run("Research topic B"))
task3 = asyncio.create_task(research_agent.async_run("Research topic C"))
results = await asyncio.gather(task1, task2, task3)
return results
The Technical Edge of Llama 4 untuk AI Ejen
nyala api 4's ciri khusus menjadikannya sangat sesuai untuk aplikasi ejen:
- Seni bina multimodal gabungan awal membolehkan ejen memproses teks dan imej bersama-sama secara semula jadi, tidak seperti pendekatan sebelumnya yang memisahkan modaliti.
- Reka bentuk campuran pakar membenarkan model untuk mengaktifkan hanya parameter yang berkaitan untuk setiap tugas, menjadikan respons lebih cepat dan lebih tepat.
- Pengendalian konteks panjang yang luar biasa (sehingga 10J token dalam Scout) membolehkan ejen mengekalkan sejarah perbualan dan merujuk dokumen yang panjang tanpa kehilangan koheren.
- Keupayaan berbilang bahasa merentas 12 bahasa yang disokong secara rasmi menjadikan ejen boleh diakses oleh pengguna global.
dia, anda boleh mencipta AI ejen yang bukan sahaja memahami dan bertindak balas terhadap permintaan tetapi bekerjasama secara aktif untuk menyelesaikan masalah yang kompleks—benar-benar mewakili generasi akan datang AI aplikasi.
Soalan Lazim Teratas
Apakah yang membezakan Llama 4 daripada model bahasa lain?
Llama 4 menggunakan pendekatan gabungan awal untuk pemprosesan pelbagai mod dan seni bina Campuran Pakar yang jarang untuk kecekapan. Ia menganggap teks, imej dan video sebagai jujukan token tunggal dan hanya mengaktifkan submodel "pakar" yang berkaitan untuk setiap input.
Bolehkah AutoGen berfungsi dengan LLM selain daripada Llama 4?
Ya, AutoGen adalah model-agnostik dan boleh berfungsi dengan pelbagai LLM termasuk TerbukaAI model, model Anthropic dan model sumber terbuka lain seperti Mistral AI atau DeepSeek.
Adakah membina AI ejen memerlukan kemahiran pengaturcaraan lanjutan?
Tak semestinya. Dengan pengetahuan dan pemahaman Python asas tentang LLM, anda boleh menyediakan dan menjalankan aliran kerja ejen. AutoGen memudahkan proses mencipta dan menyelaraskan berbilang ejen.
Boleh ini AI ejen dijalankan pada perkakasan tempatan?
Ya, AutoGen menyokong penyepaduan dengan LLM tempatan melalui alatan seperti Ollama, membolehkan anda menjalankan ejen pada perkakasan anda sendiri.
Bagaimanakah cara saya mengendalikan kunci API dengan selamat dalam pengeluaran?
Simpan kunci API dalam pembolehubah persekitaran atau peti besi selamat dan bukannya dalam kod. Gunakan pengesahan dan penyulitan yang betul untuk penggunaan pengeluaran.
Bolehkah saya melanjutkan ejen dengan alatan tersuai dan API?
betul-betul. AutoGen membolehkan anda menyambungkan ejen kepada API luaran, pangkalan data dan alatan tersuai, membolehkan mereka berinteraksi dengan pelbagai sistem dan perkhidmatan.
Bacaan yang Dicadangkan:
Kesimpulan
Bangunan AI ejen dengan Llama 4 dan AutoGen membuka kemungkinan menarik untuk mencipta sistem kolaboratif pintar yang boleh menangani tugas yang rumit. Gabungan daripada nyala api 4's kecerdasan pelbagai mod dan AutoGen's rangka kerja ejen yang fleksibel menyediakan pembangun dengan alat yang berkuasa untuk mencipta AI agen yang boleh menaakul, bekerjasama, dan menyesuaikan diri dengan pelbagai senario.
Projek contoh kami—penjana cadangan berbilang ejen—menunjukkan hanya satu aplikasi praktikal teknologi ini. Prinsip yang sama boleh digunakan untuk membina AI ejen untuk penciptaan kandungan, analisis data, perkhidmatan pelanggan, penyelidikan, pengurusan projek dan banyak domain lain.
Semasa anda membina sendiri AI ejen dengan Llama 4 dan AutoGen, ingat prinsip utama ini:


