1803 từ
9 phút đọc
Awesome LLM Apps: Kho ứng dụng AI toàn diện với Agents và RAG

Awesome LLM Apps: Kho tàng ứng dụng AI thực tế cho developers#

Trong thời đại AI bùng nổ, việc tìm kiếm các ví dụ thực tế và high-quality về LLM applications trở thành thách thức lớn cho developers. Awesome LLM Apps - repository được duy trì bởi Shubham Saboo - đã trở thành treasure trove với hơn 100+ ứng dụng AI thực tế, từ simple chatbots đến complex multi-agent systems.

Awesome LLM Apps là gì?#

Awesome LLM Apps là một curated collection của các LLM applications được xây dựng với RAG, AI Agents, Multi-agent Teams, MCP (Model Context Protocol), Voice Agents và nhiều techniques khác. Repository này features các apps sử dụng models từ OpenAI, Anthropic, Google Gemini, xAI và các open-source models như Qwen và Llama.

Dự án này bao gồm:

  • AI Agents - Single và multi-agent systems
  • RAG Applications - Retrieval Augmented Generation
  • Voice AI - Speech-enabled applications
  • MCP Integration - Model Context Protocol apps
  • Chat Applications - Interactive conversational AI
  • Fine-tuning Tutorials - Model customization guides

Tính năng nổi bật#

🌱 Starter AI Agents#

Perfect cho beginners trong AI development:

Essential Agents#

  • AI Blog to Podcast Agent: Convert written content thành audio
  • AI Travel Agent: Intelligent travel planning và booking
  • AI Data Analysis Agent: Automated data insights
  • AI Medical Imaging Agent: Healthcare diagnostics
  • AI Music Generator Agent: Creative audio generation
  • Gemini Multimodal Agent: Multi-format processing

Specialized Applications#

# Example: AI Travel Agent
from phi.agent import Agent
from phi.model.openai import OpenAIChat
travel_agent = Agent(
model=OpenAIChat(id="gpt-4"),
tools=[weather_tool, booking_tool, maps_tool],
instructions="You are a travel planning expert..."
)
response = travel_agent.run("Plan a 5-day trip to Tokyo")

🚀 Advanced AI Agents#

Sophisticated applications cho production use:

Single Agent Systems#

  • AI Deep Research Agent: Comprehensive research automation
  • AI System Architect Agent: Software architecture design
  • AI Investment Agent: Financial analysis và recommendations
  • AI Health & Fitness Agent: Personalized wellness coaching
  • AI Journalist Agent: News gathering và article writing
  • AI Meeting Agent: Meeting transcription và summary

Complex Applications#

# Example: AI Investment Agent
class InvestmentAgent:
def __init__(self):
self.market_analyzer = MarketAnalyzer()
self.risk_assessor = RiskAssessor()
self.portfolio_optimizer = PortfolioOptimizer()
def analyze_investment(self, ticker):
# Comprehensive investment analysis
market_data = self.market_analyzer.get_data(ticker)
risk_profile = self.risk_assessor.assess(ticker)
recommendation = self.generate_recommendation(market_data, risk_profile)
return recommendation

🤝 Multi-Agent Teams#

Collaborative AI systems:

Agent Teams#

  • AI Finance Agent Team: Collaborative financial analysis
  • AI Legal Agent Team: Multi-expert legal consultation
  • AI Recruitment Agent Team: End-to-end hiring process
  • AI Real Estate Agent Team: Property analysis và recommendations
  • AI Teaching Agent Team: Educational content creation
  • Multimodal Coding Agent Team: Software development collaboration

Multi-Agent Architecture#

# Example: AI Finance Agent Team
from phi.agent import Agent
from phi.tools.yfinance import YFinanceTools
# Specialized agents
market_analyst = Agent(
name="Market Analyst",
model=OpenAIChat(id="gpt-4"),
tools=[YFinanceTools()],
instructions="Analyze market trends and data"
)
risk_manager = Agent(
name="Risk Manager",
model=OpenAIChat(id="gpt-4"),
instructions="Assess investment risks"
)
portfolio_manager = Agent(
name="Portfolio Manager",
model=OpenAIChat(id="gpt-4"),
instructions="Optimize portfolio allocation"
)
# Coordinated team workflow
team = [market_analyst, risk_manager, portfolio_manager]

🗣️ Voice AI Agents#

Speech-enabled intelligent systems:

Voice Applications#

  • AI Audio Tour Agent: Interactive tourism experiences
  • Customer Support Voice Agent: Automated phone support
  • Voice RAG Agent: Speech-based document querying

Voice Integration#

# Example: Voice RAG Agent
import speech_recognition as sr
import pyttsx3
class VoiceRAGAgent:
def __init__(self):
self.recognizer = sr.Recognizer()
self.tts_engine = pyttsx3.init()
self.rag_system = RAGSystem()
def listen_and_respond(self):
with sr.Microphone() as source:
audio = self.recognizer.listen(source)
query = self.recognizer.recognize_google(audio)
response = self.rag_system.query(query)
self.tts_engine.say(response)
self.tts_engine.runAndWait()

RAG (Retrieval Augmented Generation)#

📚 Comprehensive RAG Implementations#

Advanced retrieval-augmented generation systems:

RAG Varieties#

  • Agentic RAG: Intelligent document retrieval
  • Corrective RAG (CRAG): Self-correcting responses
  • Hybrid Search RAG: Combined semantic và keyword search
  • Vision RAG: Image và document processing
  • Autonomous RAG: Self-managing retrieval systems

RAG Architecture Example#

# Advanced RAG Implementation
from langchain.vectorstores import Chroma
from langchain.embeddings import OpenAIEmbeddings
from langchain.llms import OpenAI
class AdvancedRAG:
def __init__(self):
self.embeddings = OpenAIEmbeddings()
self.vectorstore = Chroma(embedding_function=self.embeddings)
self.llm = OpenAI()
self.retriever = self.vectorstore.as_retriever(
search_type="mmr", # Maximum Marginal Relevance
search_kwargs={"k": 6, "fetch_k": 20}
)
def query_with_sources(self, question):
# Retrieve relevant documents
docs = self.retriever.get_relevant_documents(question)
# Generate response với context
context = "\n".join([doc.page_content for doc in docs])
response = self.llm(f"Context: {context}\n\nQuestion: {question}")
return {
"answer": response,
"sources": [doc.metadata for doc in docs]
}

🧠 Memory-Enabled Applications#

Stateful AI systems với persistent memory:

Memory Features#

  • Personalized Memory: User-specific context retention
  • Conversation Memory: Long-term chat history
  • Shared Memory: Multi-agent information sharing
  • Stateful Chat: Persistent conversation state

Memory Implementation#

# LLM App với Personalized Memory
from phi.memory import AssistantMemory
from phi.storage.assistant.postgres import PgAssistantStorage
class PersonalizedAgent:
def __init__(self, user_id):
self.memory = AssistantMemory(
storage=PgAssistantStorage(
table_name="agent_memory",
db_url="postgresql://user:pass@localhost/db"
),
create_user_memories=True,
create_session_summary=True
)
self.user_id = user_id
def chat(self, message):
# Retrieve user context
user_context = self.memory.get_user_memories(self.user_id)
# Generate personalized response
response = self.generate_response(message, user_context)
# Update memory
self.memory.add_chat_message(self.user_id, message, response)
return response

Model Context Protocol (MCP)#

🔗 MCP AI Agents#

Next-generation agent architecture:

MCP Applications#

  • Browser MCP Agent: Web automation với MCP
  • GitHub MCP Agent: Repository management
  • Notion MCP Agent: Knowledge base integration
  • AI Travel Planner MCP: Coordinated travel planning

MCP Implementation#

# MCP Agent Example
from mcp import MCPAgent, MCPServer
class GitHubMCPAgent(MCPAgent):
def __init__(self):
super().__init__()
self.github_server = MCPServer("github")
self.tools = [
"create_issue", "list_repos",
"get_commits", "create_pr"
]
async def handle_request(self, request):
if request.method == "github/create_issue":
return await self.create_github_issue(request.params)
elif request.method == "github/list_repos":
return await self.list_repositories(request.params)

Specialized Applications#

🎮 Autonomous Game Playing Agents#

AI systems that play games autonomously:

Game Agents#

  • AI Chess Agent: Strategic chess gameplay
  • AI 3D Pygame Agent: 3D game interaction
  • AI Tic-Tac-Toe Agent: Simple game mastery

Game AI Architecture#

# AI Chess Agent
import chess
import chess.engine
class AIChessAgent:
def __init__(self):
self.board = chess.Board()
self.engine = chess.engine.SimpleEngine.popen_uci("stockfish")
def make_move(self):
# AI decision making
result = self.engine.play(self.board, chess.engine.Limit(time=2.0))
move = result.move
self.board.push(move)
return move
def evaluate_position(self):
# Position evaluation using neural networks
info = self.engine.analyse(self.board, chess.engine.Limit(depth=20))
return info["score"].white().score()

💬 Chat with X Applications#

Interactive document và service chatbots:

Chat Applications#

  • Chat with GitHub: Repository exploration
  • Chat with Gmail: Email management
  • Chat with PDF: Document querying
  • Chat with YouTube: Video content analysis
  • Chat with Research Papers: Academic paper discussion

Implementation Example#

# Chat với PDF Application
from langchain.document_loaders import PyPDFLoader
from langchain.text_splitter import RecursiveCharacterTextSplitter
class PDFChatAgent:
def __init__(self, pdf_path):
# Load và process PDF
loader = PyPDFLoader(pdf_path)
documents = loader.load()
# Split into chunks
text_splitter = RecursiveCharacterTextSplitter(
chunk_size=1000,
chunk_overlap=200
)
texts = text_splitter.split_documents(documents)
# Create vector store
self.vectorstore = Chroma.from_documents(texts, OpenAIEmbeddings())
self.qa_chain = RetrievalQA.from_chain_type(
llm=OpenAI(),
chain_type="stuff",
retriever=self.vectorstore.as_retriever()
)
def ask_question(self, question):
return self.qa_chain.run(question)

Fine-tuning và Model Customization#

🔧 LLM Fine-tuning Tutorials#

Model adaptation cho specific use cases:

Fine-tuning Examples#

  • Gemma 3 Fine-tuning: Google’s Gemma model customization
  • Llama 3.2 Fine-tuning: Meta’s Llama adaptation

Fine-tuning Process#

# Llama 3.2 Fine-tuning Example
from transformers import (
AutoTokenizer, AutoModelForCausalLM,
TrainingArguments, Trainer
)
from datasets import Dataset
class LlamaFineTuner:
def __init__(self, model_name="meta-llama/Llama-3.2-1B"):
self.tokenizer = AutoTokenizer.from_pretrained(model_name)
self.model = AutoModelForCausalLM.from_pretrained(model_name)
def prepare_dataset(self, texts, labels):
def tokenize_function(examples):
return self.tokenizer(
examples['text'],
truncation=True,
padding=True,
max_length=512
)
dataset = Dataset.from_dict({'text': texts, 'labels': labels})
tokenized_dataset = dataset.map(tokenize_function, batched=True)
return tokenized_dataset
def fine_tune(self, train_dataset, eval_dataset):
training_args = TrainingArguments(
output_dir="./llama-finetuned",
num_train_epochs=3,
per_device_train_batch_size=4,
per_device_eval_batch_size=4,
warmup_steps=500,
weight_decay=0.01,
logging_dir="./logs",
)
trainer = Trainer(
model=self.model,
args=training_args,
train_dataset=train_dataset,
eval_dataset=eval_dataset,
)
trainer.train()
trainer.save_model()

Framework Crash Courses#

🧑‍🏫 AI Agent Framework Learning#

Comprehensive guides cho popular frameworks:

Google Agent Development Kit (ADK)#

# Google ADK Crash Course Example
from google.adk import Agent, Tool
def weather_tool(location: str) -> str:
# Weather API integration
return f"Weather in {location}: Sunny, 25°C"
agent = Agent(
name="WeatherAgent",
instructions="Provide weather information for any location",
tools=[weather_tool],
model="gemini-pro"
)
response = agent.run("What's the weather like in Tokyo?")

OpenAI Agents SDK#

# OpenAI SDK Crash Course
from openai import OpenAI
class OpenAIAgent:
def __init__(self):
self.client = OpenAI()
self.tools = [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get current weather",
"parameters": {
"type": "object",
"properties": {
"location": {"type": "string"}
}
}
}
}
]
def chat_completion(self, message):
return self.client.chat.completions.create(
model="gpt-4",
messages=[{"role": "user", "content": message}],
tools=self.tools
)

Performance và Scalability#

📊 Production Considerations#

Scalability Patterns#

# Multi-Agent Load Balancing
from concurrent.futures import ThreadPoolExecutor
import queue
class AgentPool:
def __init__(self, agent_class, pool_size=10):
self.agents = [agent_class() for _ in range(pool_size)]
self.queue = queue.Queue()
# Initialize agent pool
for agent in self.agents:
self.queue.put(agent)
def process_request(self, request):
agent = self.queue.get()
try:
result = agent.process(request)
return result
finally:
self.queue.put(agent)
def batch_process(self, requests):
with ThreadPoolExecutor(max_workers=len(self.agents)) as executor:
futures = [
executor.submit(self.process_request, req)
for req in requests
]
return [f.result() for f in futures]

Monitoring và Logging#

# Agent Performance Monitoring
import logging
import time
from functools import wraps
def monitor_agent_performance(func):
@wraps(func)
def wrapper(self, *args, **kwargs):
start_time = time.time()
try:
result = func(self, *args, **kwargs)
execution_time = time.time() - start_time
logging.info(f"Agent {self.__class__.__name__} executed in {execution_time:.2f}s")
return result
except Exception as e:
execution_time = time.time() - start_time
logging.error(f"Agent {self.__class__.__name__} failed after {execution_time:.2f}s: {str(e)}")
raise
return wrapper

Community và Impact#

📈 Project Statistics#

  • 71.9k GitHub stars - Exceptional community interest
  • 🔄 9.3k forks - Active development ecosystem
  • 👥 52+ contributors - Strong contributor base
  • 📊 769 commits - Regular updates và improvements
  • 🌍 Multi-language support - Documentation trong 8 languages

🌟 Community Impact#

Educational Value#

  • Practical Examples: Real-world application templates
  • Best Practices: Industry-standard implementations
  • Learning Path: Progressive complexity levels
  • Documentation: Comprehensive guides và tutorials

Industry Applications#

Terminal window
# Before Awesome LLM Apps:
"How do I build an AI agent?"
"Where are practical RAG examples?"
"What's the best multi-agent architecture?"
# After Awesome LLM Apps:
- 100+ ready-to-use examples
- Production-grade implementations
- Multiple framework comparisons
- Complete tutorials guides

Getting Started#

🚀 Quick Setup#

Installation Process#

Terminal window
# Clone repository
git clone https://github.com/Shubhamsaboo/awesome-llm-apps.git
cd awesome-llm-apps
# Navigate to desired project
cd starter_ai_agents/ai_travel_agent
# Install dependencies
pip install -r requirements.txt
# Configure API keys
export OPENAI_API_KEY="your-api-key"
export ANTHROPIC_API_KEY="your-api-key"
# Run the application
python app.py

Project Structure#

Terminal window
awesome-llm-apps/
├── starter_ai_agents/ # Beginner-friendly agents
├── advanced_ai_agents/ # Complex agent systems
├── voice_ai_agents/ # Speech-enabled apps
├── mcp_ai_agents/ # MCP-based agents
├── rag_tutorials/ # RAG implementations
├── advanced_llm_apps/ # Specialized applications
└── ai_agent_framework_crash_course/ # Framework guides

Best Practices#

🔧 Development Guidelines#

Agent Design Patterns#

# Single Responsibility Agent
class SpecializedAgent:
def __init__(self, domain):
self.domain = domain
self.tools = self.load_domain_tools()
self.model = self.configure_model()
def process(self, request):
# Single, well-defined responsibility
return self.execute_specialized_task(request)
# Coordination Pattern
class CoordinatorAgent:
def __init__(self, specialist_agents):
self.specialists = specialist_agents
self.router = RequestRouter()
def delegate(self, request):
specialist = self.router.route(request)
return specialist.process(request)

Error Handling và Resilience#

# Robust Agent Implementation
from tenacity import retry, stop_after_attempt, wait_exponential
class ResilientAgent:
@retry(
stop=stop_after_attempt(3),
wait=wait_exponential(multiplier=1, min=4, max=10)
)
def robust_process(self, request):
try:
return self.model.generate(request)
except RateLimitError:
# Handle rate limiting
time.sleep(60)
raise
except APIError as e:
# Handle API errors
self.logger.error(f"API Error: {e}")
raise

🔮 Emerging Patterns#

Next-Generation Features#

  • Autonomous Agent Teams: Self-organizing agent collectives
  • Cross-Modal Intelligence: Unified text, image, và audio processing
  • Continuous Learning: Agents that improve từ interactions
  • Federated AI Systems: Distributed agent networks

Integration Roadmap#

# Future Agent Architecture
class NextGenAgent:
def __init__(self):
self.multimodal_processor = MultiModalProcessor()
self.continuous_learner = ContinuousLearner()
self.federated_network = FederatedNetwork()
async def process_multimodal(self, inputs):
# Handle text, image, audio simultaneously
processed_inputs = await self.multimodal_processor.process(inputs)
# Learn from interaction
self.continuous_learner.update(processed_inputs)
# Coordinate với network
network_insights = await self.federated_network.query(processed_inputs)
return self.synthesize_response(processed_inputs, network_insights)

Kết luận#

Awesome LLM Apps đại diện cho comprehensive resource cho AI development community. Với hơn 100+ practical examples và tutorials, repository này:

  • Accelerates Learning: Từ beginner đến advanced levels
  • Provides Templates: Production-ready code examples
  • Covers Spectrum: RAG, agents, voice, multi-modal applications
  • Supports Innovation: Multiple frameworks và approaches
  • Builds Community: Open-source collaboration platform

Trong thời đại AI transformation, Awesome LLM Apps serves như essential toolkit cho developers muốn build practical, scalable AI applications. Repository này không chỉ teaches concepts mà còn provides hands-on experience với real-world implementations.

Tài nguyên tham khảo#

Quick Start Commands#

Terminal window
# Full repository setup
git clone https://github.com/Shubhamsaboo/awesome-llm-apps.git
cd awesome-llm-apps
# Try a starter agent
cd starter_ai_agents/ai_travel_agent
pip install -r requirements.txt
export OPENAI_API_KEY="your-key"
python agent.py
# Explore advanced examples
cd ../../advanced_ai_agents/multi_agent_apps/ai_finance_agent_team
python team_coordinator.py

Bài viết này giới thiệu Awesome LLM Apps - treasure trove của practical AI applications. Với 71.9k stars và growing community, đây là must-have resource cho mọi AI developer muốn build real-world applications.

Awesome LLM Apps: Kho ứng dụng AI toàn diện với Agents và RAG
https://githay.com/posts/awesome-llm-apps-opensource/
Tác giả
Githay
Đăng vào lúc
2025-10-14
Giấy phép bản quyền
CC BY-NC-SA 4.0