Przejdź do głównej treści

Top 15 frameworków Pythona do budowy kompletnych agentowych aplikacji AI

Porównaj narzędzia ogólnego przeznaczenia, oficjalne SDK, systemy orkiestracji multi‑agentowej, rozwiązania data i RAG oraz lekkie opcje dla otwartych modeli do budowy agentowych aplikacji AI.
Zaktualizowano 31 sie 2026  · 11 min Czytać

Eksploruj z AI

ChatGPTClaudePerplexity

Budowanie agentowych aplikacji AI jest dziś znacznie łatwiejsze niż kilka lat temu. Zamiast tworzyć od zera pętle agenta, integracje narzędzi, pamięć, wyszukiwanie i orkiestrację, deweloperzy mogą używać frameworków Pythona, które dostarczają większość tych komponentów.

Wiele frameworków z tego artykułu wykorzystałem do budowy aplikacji RAG, agentów autonomicznych, systemów multi‑agentowych i wdrażalnych narzędzi AI.

Często używam LangChain do elastycznych przepływów agentów, LlamaIndex i Haystack do aplikacji połączonych z danymi, a OpenAI Agents SDK lub Google ADK, gdy zależy mi na szybszej integracji z modelami dostawców.

Niektóre z tych frameworków tak się rozwinęły, że budowanie własnego rozwiązania często nie jest konieczne. Mając klucz API, trochę kredytów na modele i odpowiedni framework, możesz stworzyć agenta, podłączyć go do narzędzi lub prywatnych danych, przetestować i wdrożyć przez API lub interfejs użytkownika.

Ten artykuł porównuje 15 frameworków Pythona w pięciu kategoriach: frameworki agentów ogólnego przeznaczenia, oficjalne SDK agentów, frameworki orkiestracji multi‑agentowej, frameworki danych i RAG oraz lekkie frameworki dla otwartych modeli.

Każda sekcja zawiera też krótki przykład w Pythonie, który możesz skopiować, wkleić i przetestować, aby szybko zrozumieć, jak działa dany framework.

Frameworki agentów ogólnego przeznaczenia

Te frameworki dostarczają szerokie klocki do tworzenia agentów, podłączania narzędzi, zarządzania stanem i kontrolowania wieloetapowych przepływów pracy.

1. LangChain

Dla wielu deweloperów nowoczesny rozwój aplikacji opartych na LLM zaczął się od LangChain, otwartoźródłowego frameworka Pythona zaprojektowanego do łączenia modeli językowych z zewnętrznymi danymi, narzędziami, API i logiką aplikacji. Stał się jednym z pierwszych szeroko przyjętych frameworków do używania OpenAI API z witrynami, dokumentami, wektorowymi bazami danych i innymi źródłami danych, aby budować bardziej kontekstowe aplikacje.

Dziś LangChain rozwinął się w kompletny ekosystem do budowy end‑to‑end agentowych aplikacji AI, w tym systemów RAG, agentów korzystających z narzędzi, workflow, integracji, monitoringu i ewaluacji. Polecam sprawdzić ścieżkę AI Engineering with LangChain, aby dowiedzieć się więcej.

Poniższy przykład tworzy prostego agenta LangChain, który potrafi użyć narzędzia do przeszukiwania dokumentacji, by znaleźć istotne informacje przed udzieleniem odpowiedzi.

# pip install -U langchain "langchain[openai]"

from langchain.agents import create_agent

def search_docs(query: str) -> str:
    """Search the company documentation."""
    return f"Documentation found for: {query}"

agent = create_agent(
    model="openai:gpt-5.5",
    tools=[search_docs],
    system_prompt="Use the documentation tool when needed.",
)

result = agent.invoke({
    "messages": [{
        "role": "user",
        "content": "What is our remote-work policy?"
    }]
})

print(result["messages"][-1].content)

2. LangGraph

Podczas gdy LangChain ułatwia tworzenie agentów i narzędzi, LangGraph daje większą kontrolę nad sposobem działania tych agentów. Pozwala zbudować aplikację jako graf połączonych kroków, co ułatwia kontrolę pętli, wywołań narzędzi, współdzielonego stanu, akceptacji przez człowieka i przepływów multi‑agentowych.

Szczególnie przydatny jest przy budowie agentów autonomicznych, którzy muszą wielokrotnie decydować, co zrobić, wybrać właściwe narzędzie, sprawdzić wynik i kontynuować aż do ukończenia zadania. LangGraph obsługuje też trwałość, strumieniowanie, checkpointy i odzyskiwanie dla aplikacji działających dłużej. Nasz tutorial LangGraph zawiera więcej szczegółów.

Poniższy przykład tworzy agenta, który może wielokrotnie wywoływać narzędzia kalkulatora, aż zbierze dość informacji, by odpowiedzieć:

# pip install -U langgraph langchain langchain-openai

from langchain.chat_models import init_chat_model
from langchain.tools import tool
from langgraph.graph import MessagesState, StateGraph, START
from langgraph.prebuilt import ToolNode, tools_condition

model = init_chat_model("openai:gpt-5.5", temperature=0)

@tool
def add(a: int, b: int) -> int:
    """Add two numbers."""
    return a + b

@tool
def multiply(a: int, b: int) -> int:
    """Multiply two numbers."""
    return a * b

tools = [add, multiply]
model_with_tools = model.bind_tools(tools)

def call_model(state: MessagesState):
    response = model_with_tools.invoke(state["messages"])
    return {"messages": [response]}

builder = StateGraph(MessagesState)
builder.add_node("agent", call_model)
builder.add_node("tools", ToolNode(tools))

builder.add_edge(START, "agent")
builder.add_conditional_edges("agent", tools_condition)
builder.add_edge("tools", "agent")

agent = builder.compile()

result = agent.invoke({
    "messages": [{
        "role": "user",
        "content": "Add 12 and 8, then multiply the result by 3."
    }]
})

print(result["messages"][-1].content)

Graf wysyła żądanie do modelu, uruchamia wymagane narzędzia i wraca do modelu, aż ten wygeneruje ostateczną odpowiedź.

3. Agno

Agno to framework Pythona do budowy agentów, zespołów multi‑agentowych i ustrukturyzowanych przepływów. Obejmuje też AgentOS, który pomaga udostępniać agentów przez API, przechowywać sesje i ślady oraz zarządzać nimi jak aplikacjami produkcyjnymi. Ponieważ może działać we własnej infrastrukturze, organizacje zachowują większą kontrolę nad danymi i bezpieczeństwem.

Poniższy przykład tworzy agenta badawczego, który potrafi przeszukać internet, zanim przygotuje zwięzłą odpowiedź.

# pip install -U agno ddgs openai

from agno.agent import Agent
from agno.models.openai import OpenAIResponses
from agno.tools.duckduckgo import DuckDuckGoTools

agent = Agent(
    name="AI Research Assistant",
    model=OpenAIResponses(id="gpt-5.5"),
    tools=[DuckDuckGoTools()],
    instructions="Search when needed and keep the answer concise.",
)

agent.print_response(
    "Find one recent development in open-source AI and summarize it.",
    stream=True,
)

Agent używa narzędzia wyszukiwania, aby znaleźć bieżące informacje, i strumieniuje krótkie podsumowanie do użytkownika.

4. Pydantic AI

Pydantic AI to natywny dla Pythona framework zespołu stojącego za Pydantic do budowy agentów i aplikacji generatywnego AI. Praca z nim przypomina używanie modeli Pydantic lub FastAPI, ponieważ agenci, narzędzia, zależności i wyjścia są definiowane standardowymi funkcjami Pythona, adnotacjami typów, dekoratorami i klasami BaseModel. Następnie wykorzystuje walidację Pydantic, aby utrzymać ustrukturyzowane i niezawodne argumenty narzędzi oraz wyniki modeli.

Polecam tutorial Pydantic AI, aby dowiedzieć się więcej o frameworku.

Poniższy przykład tworzy agenta, który zwraca zweryfikowany plan artykułu jako model Pydantic.

# pip install -U pydantic-ai

from pydantic import BaseModel, Field
from pydantic_ai import Agent


class ArticlePlan(BaseModel):
    title: str
    key_points: list[str]
    reading_time_minutes: int = Field(ge=1)


agent = Agent(
    "openai:gpt-5.6-sol",
    output_type=ArticlePlan,
    instructions="Create concise article plans for technical readers.",
)

result = agent.run_sync(
    "Create a short article plan about building AI agents in Python."
)

print(result.output)

Agent generuje obiekt ArticlePlan i weryfikuje, że każde pole spełnia wymagany typ i reguły Pythona przed zwróceniem wyniku.

Oficjalne SDK agentów

Oficjalne SDK są utrzymywane przez dostawców AI i zwykle oferują najprostszą integrację z ich modelami, API, narzędziami, systemami wdrożeń i platformami obserwowalności.

5. OpenAI Agents SDK

OpenAI Agents SDK to lekki, Python‑first framework do budowy aplikacji jedno‑ i multi‑agentowych. Zapewnia wbudowaną pętlę agenta, narzędzia funkcyjne, przekazania, guardraile, sesje, akceptacje przez człowieka i tracing bez nadmiernych abstrakcji.

Uwielbiam OpenAI Agents SDK, bo jest prosty, szybki w integracji i łatwy do zrozumienia. Zbudowałem z nim wiele aplikacji bez większych problemów. Automatycznie tworzy też ślady widoczne w OpenAI Dashboard, co ułatwia inspekcję odpowiedzi modelu, wywołań narzędzi, przekazań i pełnego przebiegu wykonania.

Poniższy przykład tworzy agenta‑historyka, który może wywołać funkcję Pythona, by pobrać zaskakujący fakt historyczny.

# pip install openai-agents

import asyncio
from agents import Agent, Runner, function_tool


@function_tool
def history_fun_fact() -> str:
    """Return a surprising historical fact."""
    return "The first computer programmer, Ada Lovelace, lived in the 1800s."


agent = Agent(
    name="History Assistant",
    instructions=(
        "Answer history questions clearly and briefly. "
        "Use history_fun_fact when it is helpful."
    ),
    tools=[history_fun_fact],
)


async def main():
    result = await Runner.run(
        agent,
        "Tell me something surprising about the history of computing.",
    )
    print(result.final_output)


if __name__ == "__main__":
    asyncio.run(main())

SDK uruchamia agenta, wywołuje narzędzie historyczne w razie potrzeby, zwraca jego wynik do modelu i generuje finalną odpowiedź. Cały przebieg można też przejrzeć w przeglądarce śladów.

7. Google Agent Development Kit

Agent Development Kit Google’a, czyli ADK, to otwartoźródłowy framework do budowy, ewaluacji i wdrażania pojedynczych agentów, asystentów korzystających z narzędzi, przepływów graficznych i systemów multi‑agentowych. Szczególnie dobrze współpracuje z modelami Gemini, a przy tym wspiera innych dostawców modeli.

ADK stał się jednym z moich ulubionych frameworków, bo jest prosty i naturalnie współdziała z Gemini.

Użyłem go do zbudowania kilku aplikacji bez większych problemów. Choć nadal uważam, że OpenAI Agents SDK łatwiej zintegrować i jest bardziej elastyczny pod względem kontroli i wbudowanych funkcji, ADK to mocna alternatywa i szczególnie konkurencyjna dla aplikacji opartych na Gemini.

Poniższy przykład tworzy asystenta wydarzeń, który może wywołać funkcję Pythona, by pobrać godzinę rozpoczęcia wydarzenia.

# pip install google-adk

from google.adk.agents.llm_agent import Agent


def get_event_time(city: str) -> dict:
    """Return the event starting time for a city."""
    return {
        "status": "success",
        "city": city,
        "time": "6:00 PM",
    }


root_agent = Agent(
    model="gemini-flash-latest",
    name="event_assistant",
    description="Provides information about events in different cities.",
    instruction=(
        "Answer event questions clearly. "
        "Use the get_event_time tool when the starting time is requested."
    ),
    tools=[get_event_time],
)

Agent używa funkcji jako narzędzia zawsze, gdy musi pobrać godzinę rozpoczęcia wydarzenia w danym mieście.

8. Claude Agent SDK

Claude Agent SDK to framework Anthropic w Pythonie i TypeScripcie do budowy agentów autonomicznych z użyciem tej samej pętli agenta, narzędzi i zarządzania kontekstem, które napędzają Claude Code. Jest szczególnie przydatny dla agentów, którzy muszą czytać pliki, edytować kod, uruchamiać polecenia, łączyć się z narzędziami MCP i realizować dłuższe zadania.

Anthropic, OpenAI i Google ściśle integrują swoje modele z własnymi frameworkami agentów, dzięki czemu narzędzia, sesje, tracing i inne zaawansowane funkcje łatwo skonfigurować.

Jednak Claude Agent SDK jest zaprojektowany konkretnie dla Claude, a nie dowolnych otwartoźródłowych czy lokalnie hostowanych modeli. Więcej znajdziesz w naszym tutorialu Claude Agent SDK.

Poniższy przykład tworzy agenta programistycznego, który przegląda plik Pythona, wykrywa błędy i automatycznie je naprawia.

# pip install claude-agent-sdk

import asyncio
from claude_agent_sdk import (
    AssistantMessage,
    ClaudeAgentOptions,
    ResultMessage,
    query,
)


async def main():
    async for message in query(
        prompt="Review app.py for errors that could cause crashes and fix them.",
        options=ClaudeAgentOptions(
            allowed_tools=["Read", "Edit", "Glob"],
            permission_mode="acceptEdits",
        ),
    ):
        if isinstance(message, AssistantMessage):
            for block in message.content:
                if hasattr(block, "text"):
                    print(block.text)
                elif hasattr(block, "name"):
                    print(f"Tool used: {block.name}")

        elif isinstance(message, ResultMessage):
            print(f"Completed: {message.subtype}")


if __name__ == "__main__":
    asyncio.run(main())

SDK uruchamia pętlę agenta, podczas gdy Claude czyta plik, wybiera wymagane narzędzia, edytuje kod i strumieniuje postęp aż do zakończenia zadania.

Frameworki orkiestracji multi‑agentowej

Frameworki multi‑agentowe koordynują kilka wyspecjalizowanych agentów, z których każdy ma przypisaną określoną rolę, cel, zestaw narzędzi lub etap większego workflow. 

9. CrewAI

CrewAI to popularny framework Pythona do budowy zespołów multi‑agentowych. Deweloperzy mogą tworzyć agentów o różnych rolach, celach i zadaniach, a następnie łączyć ich w załogę, która współpracuje autonomicznie. Zadania mogą działać sekwencyjnie lub w procesie hierarchicznym, w którym menedżer koordynuje i deleguje pracę najbardziej odpowiednim agentom.

Poniższy przykład w Pythonie tworzy badacza i pisarza, którzy wspólnie przygotowują krótki raport.

# pip install crewai
# Set OPENAI_API_KEY before running

from crewai import Agent, Crew, Process, Task

researcher = Agent(
    role="AI Researcher",
    goal="Find the key facts about {topic}",
    backstory="You research technical topics carefully.",
)

writer = Agent(
    role="Technical Writer",
    goal="Turn research into a clear summary",
    backstory="You explain complex topics simply.",
)

research_task = Task(
    description="Research {topic} and identify three key findings.",
    expected_output="Three concise findings.",
    agent=researcher,
)

writing_task = Task(
    description="Write a short summary using the research findings.",
    expected_output="A clear one-paragraph report.",
    agent=writer,
    context=[research_task],
)

crew = Crew(
    agents=[researcher, writer],
    tasks=[research_task, writing_task],
    process=Process.sequential,
)

result = crew.kickoff(inputs={"topic": "agentic AI"})
print(result.raw)

Badacz realizuje pierwsze zadanie, a autor wykorzystuje jego wynik jako kontekst do stworzenia finalnego raportu.

10. MetaGPT

MetaGPT to framework multi‑agentowy, który modeluje firmę programistyczną z wyspecjalizowanymi agentami, takimi jak product manager, architekt, project manager i inżynier. Agenci podążają za ustrukturyzowanymi procedurami operacyjnymi, aby przekształcić krótkie wymaganie w plany, projekty techniczne, dokumentację i działający kod. 

Poniższy przykład tworzy zespół programistyczny i prosi go o zbudowanie prostego menedżera zadań w wierszu poleceń.

# pip install metagpt
# Configure a supported LLM API before running

import asyncio

from metagpt.roles import (
    Architect,
    Engineer,
    ProductManager,
    ProjectManager,
)
from metagpt.team import Team


async def startup(idea: str):
    company = Team()

    company.hire([
        ProductManager(),
        Architect(),
        ProjectManager(),
        Engineer(),
    ])

    company.invest(investment=3.0)
    company.run_project(idea=idea)

    await company.run(n_round=5)


if __name__ == "__main__":
    asyncio.run(
        startup("Build a simple command-line task manager")
    )

Agenci dzielą wymagania między swoje role i współpracują, aby zaplanować i rozwinąć projekt oprogramowania. 

11. AgentScope

AgentScope to framework Pythona do budowy sterowalnych i obserwowalnych agentów oraz aplikacji multi‑agentowych. Dostarcza gotowych agentów, narzędzi, pamięci, routingu wiadomości, strumieniowania, równoległych wywołań narzędzi, workflow, tracingu i interwencji człowieka. AgentScope Studio można też użyć do inspekcji i wizualizacji wykonania agentów.

Poniższy przykład tworzy agenta ReAct, który potrafi pisać i wykonywać kod Pythona, aby wykonać obliczenie.

# pip install agentscope
# Set DASHSCOPE_API_KEY before running

import asyncio
import os

from agentscope.agent import ReActAgent
from agentscope.formatter import DashScopeChatFormatter
from agentscope.memory import InMemoryMemory
from agentscope.message import Msg
from agentscope.model import DashScopeChatModel
from agentscope.tool import Toolkit, execute_python_code


async def main():
    toolkit = Toolkit()
    toolkit.register_tool_function(execute_python_code)

    agent = ReActAgent(
        name="Nova",
        sys_prompt="You are a helpful Python assistant named Nova.",
        model=DashScopeChatModel(
            model_name="qwen-max",
            api_key=os.environ["DASHSCOPE_API_KEY"],
            stream=True,
        ),
        formatter=DashScopeChatFormatter(),
        toolkit=toolkit,
        memory=InMemoryMemory(),
    )

    await agent(
        Msg(
            name="user",
            content="Use Python to calculate the sum of numbers from 1 to 100.",
            role="user",
        )
    )


if __name__ == "__main__":
    asyncio.run(main())

Agent decyduje o wywołaniu narzędzia wykonywania Pythona, uruchamia wygenerowany kod i używa wyniku do udzielenia odpowiedzi.

12. CAMEL-AI

CAMEL-AI to otwartoźródłowy framework Pythona do budowy agentów, społeczeństw multi‑agentowych i symulacji role‑playing. Ma silne nastawienie badawcze i dostarcza komponentów do współpracy agentów, narzędzi, pamięci, wyszukiwania, generowania danych i symulacji świata. Wspiera też chmurowe i lokalnie hostowane modele poprzez platformy takie jak Ollama, vLLM i SGLang.

Poniższy przykład tworzy agenta, który potrafi przeszukać internet, zanim odpowie na pytanie.

# pip install "camel-ai[web_tools]"
# Set OPENAI_API_KEY before running

from camel.agents import ChatAgent
from camel.models import ModelFactory
from camel.toolkits import SearchToolkit
from camel.types import ModelPlatformType, ModelType

model = ModelFactory.create(
    model_platform=ModelPlatformType.OPENAI,
    model_type=ModelType.GPT_5_5,
    model_config_dict={"temperature": 0.0},
)

agent = ChatAgent(
    system_message="You are a helpful AI research assistant.",
    model=model,
    tools=[SearchToolkit().search_duckduckgo],
)

response = agent.step(
    "What are the main uses of multi-agent AI systems?"
)

print(response.msgs[0].content)

Agent używa wyszukiwania DuckDuckGo, gdy potrzebuje bieżących informacji, a następnie zwraca finalną odpowiedź.

Frameworki danych i RAG

Te frameworki pomagają łączyć LLM i agentów z dokumentami, bazami danych, API i innymi prywatnymi źródłami danych, aby mogli pobierać istotny kontekst przed odpowiedzią.

13. LlamaIndex

LlamaIndex to framework Pythona do budowy aplikacji świadomych kontekstu nad prywatnymi lub domenowymi danymi. Zapewnia konektory, indeksy, retrievery, silniki zapytań, agentów i workflow do zastosowań takich jak RAG, wyszukiwanie korporacyjne i asystenci dokumentów.

LlamaIndex był jednym z moich ulubionych frameworków, gdy zaczynałem budować aplikacje RAG. Ładowanie, indeksowanie i odpytywanie danych jest w nim wyjątkowo proste, a jego kod często bywa dla mnie czytelniejszy i krótszy niż budowa tego samego w LangChain. Możesz zrobić kurs LlamaIndex, aby dowiedzieć się więcej.

Poniższy przykład ładuje dokumenty z folderu, tworzy przeszukiwalny indeks i odpowiada na pytanie, używając pobranego kontekstu.

# pip install llama-index
# Set OPENAI_API_KEY before running

from llama_index.core import SimpleDirectoryReader, VectorStoreIndex

documents = SimpleDirectoryReader("data").load_data()
index = VectorStoreIndex.from_documents(documents)

query_engine = index.as_query_engine()
response = query_engine.query(
    "What are the main findings in these documents?"
)

print(response)

LlamaIndex indeksuje pliki w folderze data i pobiera istotne informacje przed wygenerowaniem odpowiedzi.

14. Haystack

Haystack to otwartoźródłowy framework Pythona do budowy produkcyjnych pipeline’ów RAG, systemów wyszukiwania semantycznego, agentów i aplikacji AI skupionych na danych. Jego modułowa struktura pipeline’u daje przejrzystą kontrolę nad tym, jak informacje są pobierane, dodawane do promptu i wysyłane do modelu.

Używałem Haystack do budowy aplikacji RAG i multi‑agentowych bez większych problemów. Choć to framework ogólnego przeznaczenia, jest szczególnie użyteczny dla aplikacji łączących LLM z dokumentami, tekstem, systemami wyszukiwania i innymi źródłami danych.

Poniższy przykład zapisuje kilka dokumentów, pobiera najbardziej trafny i używa go do odpowiedzi na pytanie.

# pip install -U haystack-ai
# Set OPENAI_API_KEY before running

from haystack import Document, Pipeline
from haystack.components.builders import ChatPromptBuilder
from haystack.components.generators.chat import (
    OpenAIResponsesChatGenerator,
)
from haystack.components.retrievers import InMemoryBM25Retriever
from haystack.dataclasses import ChatMessage
from haystack.document_stores.in_memory import InMemoryDocumentStore

document_store = InMemoryDocumentStore()
document_store.write_documents([
    Document(content="The London AI event starts at 6:00 PM."),
    Document(content="The Berlin AI event starts at 7:00 PM."),
])

template = [
    ChatMessage.from_system(
        "Answer using the following documents:\n"
        "{% for doc in documents %}{{ doc.content }}{% endfor %}"
    ),
    ChatMessage.from_user("{{ question }}"),
]

pipeline = Pipeline()
pipeline.add_component(
    "retriever",
    InMemoryBM25Retriever(document_store),
)
pipeline.add_component(
    "prompt_builder",
    ChatPromptBuilder(template=template),
)
pipeline.add_component(
    "llm",
    OpenAIResponsesChatGenerator(model="gpt-5.5"),
)

pipeline.connect("retriever", "prompt_builder.documents")
pipeline.connect("prompt_builder", "llm")

question = "When does the London AI event start?"

result = pipeline.run({
    "retriever": {"query": question},
    "prompt_builder": {"question": question},
})

print(result["llm"]["replies"][0].text)

Haystack pobiera pasujący dokument, dodaje go do promptu i używa GPT‑5.5 do wygenerowania ugruntowanej odpowiedzi.

Lekkie frameworki i dla otwartych modeli

Te frameworki dostarczają prostszych abstrakcji do budowy agentów z hostowanymi lub lokalnie uruchamianymi otwartymi modelami.

15. Hugging Face smolagents

Hugging Face smolagents to lekki framework Pythona do budowy agentów przy minimalnej ilości kodu. Jego CodeAgent wykonuje akcje, pisząc kod Pythona, a ToolCallingAgent korzysta ze strukturalnych wywołań narzędzi. Szczególnie dobrze współdziała z modelami Hugging Face, Inference Providers i lokalnie hostowanymi modelami open‑source.

Poniższy przykład tworzy agenta wyszukiwania w sieci i przekazuje go agentowi‑menedżerowi, który decyduje, kiedy delegować research.

# pip install -U "smolagents[toolkit]"
# Set HF_TOKEN before running

from smolagents import (
    CodeAgent,
    InferenceClientModel,
    ToolCallingAgent,
    WebSearchTool,
)

model = InferenceClientModel(
    model_id="Qwen/Qwen3-Next-80B-A3B-Thinking"
)

web_agent = ToolCallingAgent(
    tools=[WebSearchTool()],
    model=model,
    name="web_search_agent",
    description="Searches the web and returns useful information.",
)

manager_agent = CodeAgent(
    tools=[],
    model=model,
    managed_agents=[web_agent],
)

result = manager_agent.run(
    "Who created Hugging Face, and when was it founded?"
)

print(result)

Menedżer decyduje, kiedy potrzebuje bieżących informacji, deleguje wyszukiwanie do wyspecjalizowanego agenta webowego, a następnie tworzy finalną odpowiedź.

Szybkie porównanie frameworków

Tabela poniżej porównuje główną zaletę każdego frameworka i typ agentowej aplikacji AI, do której najbardziej się nadaje.

Framework

Główna zaleta

Wybierz go, gdy

LangChain

Duży ekosystem integracji

Potrzebujesz szerokich integracji, narzędzi i elastyczności

LangGraph

Stanowa orkiestracja grafowa

Potrzebujesz kontrolowanych pętli, trwałego wykonania i złożonych workflow

Agno

Kompletna platforma agentowa

Chcesz budować, samodzielnie hostować i zarządzać usługami agentów

Pydantic AI

Bezpieczeństwo typów w Pythonie

Potrzebujesz walidowanych narzędzi, zależności i ustrukturyzowanych wyników

OpenAI Agents SDK

Prosty rozwój agentów i tracing

Głównie używasz modeli OpenAI i chcesz szybkiej integracji

Google ADK

Natywny rozwój agentów dla Gemini

Używasz Gemini, Google Cloud lub workflow multi‑agentowych

Claude Agent SDK

Narzędzia do pracy z komputerem, plikami i poleceniami

Budujesz agentów do kodowania, researchu lub długotrwałych zadań z Claude

CrewAI

Zespoły agentów o rolach

Wiele wyspecjalizowanych agentów ma współpracować nad projektem

MetaGPT

Symulacja firmy programistycznej

Chcesz, aby agenci planowali i generowali kompletne projekty software’owe

AgentScope

Agenci obserwowalni i sterowalni

Potrzebujesz śledzalnych agentów lub aplikacji multi‑agentowych

CAMEL-AI

Badania i symulacje multi‑agentowe

Studiujesz role‑playing, społeczeństwa agentów lub duże systemy agentowe

LlamaIndex

Aplikacje połączone z danymi i świadome kontekstu

Twoi agenci muszą pobierać i rozumować nad prywatnymi dokumentami

Haystack

Modułowe i przejrzyste pipeline’y RAG

Potrzebujesz kontroli nad retrievalem, promptowaniem i przepływem danych

smolagents

Lekkie agenty dla otwartych modeli

Chcesz minimalnych abstrakcji, agentów‑kodu lub wsparcia modeli lokalnych

Na zakończenie

Jeśli dopiero zaczynasz z agentowym AI, zacząłbym od oficjalnego SDK, takiego jak OpenAI Agents SDK, Google ADK lub Claude Agent SDK. Blisko współpracują z własnymi modelami i API, więc konfiguracja jest zwykle prosta. Dodajesz klucz API, ładujesz trochę kredytów i zaczynasz budować.

Lubię te SDK, bo łatwo dzięki nim tworzyć agentów, podłączać narzędzia i sprawdzać, co wydarzyło się podczas przebiegu. Kilkoma liniami Pythona możesz zbudować użytecznego agenta, a nawet mały system multi‑agentowy.

Gdy potrzebuję więcej elastyczności, zwykle sięgam po LangChain lub LangGraph. LangChain przydaje się, gdy potrzebuję wielu integracji, a LangGraph daje mi większą kontrolę nad stanem, pętlami i dłuższymi workflow.

Dla zespołów agentów o różnych rolach dobrym wyborem jest CrewAI. Do RAG, prywatnych dokumentów i aplikacji połączonych z danymi wybrałbym LlamaIndex lub Haystack.

Wreszcie, smolagents to dobry wybór, gdy chcę czegoś lekkiego, prostego i łatwego w użyciu z otwartymi lub lokalnymi modelami.

Moja rada: zacznij od najprostszego frameworka, który pasuje do twojego projektu. Zbuduj małą wersję, porządnie ją przetestuj i dodawaj złożoność tylko wtedy, gdy naprawdę jej potrzebujesz.

FAQs

Ile kosztuje uruchamianie agenta AI w porównaniu ze standardowym promptem LLM?

Same frameworki Pythona są open‑source i darmowe, ale uruchamianie agentów może być znacząco droższe niż standardowe wywołania API LLM. Ponieważ agenci działają w pętlach, stale wysyłając do modelu prompt systemowy, opisy narzędzi, poprzednie wyniki narzędzi i kroki rozumowania (jak ReAct), zużycie tokenów szybko się kumuluje. Jedno żądanie użytkownika może wywołać pięć lub sześć połączeń z LLM, zanim agent dojdzie do finalnej odpowiedzi. Aby zarządzać kosztami, deweloperzy często używają mniejszych, tańszych modeli do prostych zadań routingu, a większe modele rezerwują do złożonego rozumowania.

Jak ocenić, czy mój agent faktycznie działa dobrze?

Testowanie niedeterministycznych agentów wymaga czegoś więcej niż standardowe testy jednostkowe. Deweloperzy używają wyspecjalizowanych frameworków ewaluacyjnych typu "LLM-as-a-judge", takich jak Ragas, TruLens lub DeepEval. Narzędzia te uruchamiają twojego agenta na zbiorze testowych pytań i oceniają wyniki pod kątem konkretnych metryk, takich jak:

  • Ugruntowanie (groundedness): Czy agent halucynował, czy odpowiedź opiera się wyłącznie na pobranym kontekście?
  • Poprawność wyboru narzędzi: Czy agent wybrał właściwe narzędzie do zadania?
  • Trafność odpowiedzi: Czy finalna odpowiedź faktycznie odpowiada na prompt użytkownika?

Jaka jest różnica między standardowym pipeline’em RAG (LlamaIndex/Haystack) a systemem "Agentic" RAG?

Standardowy pipeline RAG podąża statyczną, zakodowaną na sztywno ścieżką: bierze zapytanie użytkownika, przeszukuje wektorową bazę danych, wstrzykuje wyniki do promptu i generuje odpowiedź. Wykonuje się raz i kończy. Agentic RAG daje LLM autonomię nad procesem retrievalu. Agent może zdecydować, czy w ogóle trzeba szukać, wygenerować wiele różnych zapytań wyszukiwania, by zebrać szerszy kontekst, ocenić, czy pobrane dokumenty są użyteczne, i ponowić wyszukiwanie, jeśli informacje są niepełne, zanim w końcu odpowie użytkownikowi.

Tematy
Sztuczna inteligencja
Agenci AI
Python

Najlepsze kursy DataCamp

course

Tworzenie aplikacji LLM z LangChain

3 godz.
50.5K
Odkryj, jak tworzyć aplikacje z AI, używając LLMs, promptów, łańcuchów i agentów w LangChain.
Zobacz szczegółyRight Arrow
Rozpocznij Kurs
Zobacz więcejRight Arrow