Pocket Flow – 100-line minimalist LLM framework
[English](https://github.com/The-Pocket/PocketFlow/blob/main/README.md) | [中文](https://github.com/The-Pocket/PocketFlow/blob/main/cookbook/pocketflow-batch/translations/README_CHINESE.md) | [Español](https://github.com/The-Pocket/PocketFlow/blob/main/cookbook/pocketflow-batch/translations/README_SPANISH.md) | [日本語](https://github.com/The-Pocket/PocketFlow/blob/main/cookbook/pocketflow-batch/translations/README_JAPANESE.md) | [Deutsch](https://github.com/The-Pocket/PocketFlow/blob/main/cookbook/pocketflow-batch/translations/README_GERMAN.md) | [Русский](https://github.com/The-Pocket/PocketFlow/blob/main/cookbook/pocketflow-batch/translations/README_RUSSIAN.md) | Português | [Français](https://github.com/The-Pocket/PocketFlow/blob/main/cookbook/pocketflow-batch/translations/README_FRENCH.md) | [한국어](https://github.com/The-Pocket/PocketFlow/blob/main/cookbook/pocketflow-batch/translations/README_KOREAN.md) ![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg) [![Docs](https://img.shields.io/badge/docs-latest-blue)](https://the-pocket.github.io/PocketFlow/) Pocket Flow é um framework minimalista para LLM com [apenas 100 linhas](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) - **Leve**: Apenas 100 linhas. Zero inchaço, zero dependências, zero aprisionamento a fornecedores. - **Expressivo**: Tudo o que você adora—([Multi-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Agentes](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Fluxo de Trabalho](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html), e mais. - **[Codificação Agêntica](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)**: Deixe que Agentes de IA (ex: Cursor AI) construam Agentes—aumento de produtividade de 10x! Comece com o Pocket Flow: - Para instalar, ```pip install pocketflow``` ou apenas copie o [código-fonte](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) (apenas 100 linhas). - Para saber mais, consulte a [documentação](https://the-pocket.github.io/PocketFlow/). Para entender a motivação, leia a [história](https://zacharyhuang.substack.com/p/i-built-an-llm-framework-in-just). - Tem perguntas? Consulte este [Assistente de IA](https://chatgpt.com/g/g-677464af36588191b9eba4901946557b-pocket-flow-assistant), ou [crie uma issue!](https://github.com/The-Pocket/PocketFlow/issues/new) - 🎉 Junte-se ao nosso [Discord](https://discord.gg/hUHHE9Sa6T) para se conectar com outros desenvolvedores construindo com o Pocket Flow! - 🎉 O Pocket Flow é inicialmente em Python, mas agora temos versões em [Typescript](https://github.com/The-Pocket/PocketFlow-Typescript), [Java](https://github.com/The-Pocket/PocketFlow-Java), [C++](https://github.com/The-Pocket/PocketFlow-CPP) e [Go](https://github.com/The-Pocket/PocketFlow-Go)! ## Por que Pocket Flow? Os frameworks LLM atuais são pesados... Você só precisa de 100 linhas para um Framework LLM!
| | **Abstração** | **Wrappers Específicos para Aplicações** | **Wrappers Específicos para Fornecedores** | **Linhas** | **Tamanho** | |----------------|:-----------------------------: |:-----------------------------------------------------------:|:------------------------------------------------------------:|:---------------:|:----------------------------:| | LangChain | Agente, Cadeia | Muitos
(ex: QA, Summarization) | Muitos
(ex: OpenAI, Pinecone, etc.) | 405K | +166MB | | CrewAI | Agente, Cadeia | Muitos
(ex: FileReadTool, SerperDevTool) | Muitos
(ex: OpenAI, Anthropic, Pinecone, etc.) | 18K | +173MB | | SmolAgent | Agente | Alguns
(ex: CodeAgent, VisitWebTool) | Alguns
(ex: DuckDuckGo, Hugging Face, etc.) | 8K | +198MB | | LangGraph | Agente, Grafo | Alguns
(ex: Semantic Search) | Alguns
(ex: PostgresStore, SqliteSaver, etc.) | 37K | +51MB | | AutoGen | Agente | Alguns
(ex: Tool Agent, Chat Agent) | Muitos [Opcional]
(ex: OpenAI, Pinecone, etc.)
| 7K
(somente core) | +26MB
(somente core) | | **PocketFlow** | **Grafo** | **Nenhum** | **Nenhum** | **100** | **+56KB** |
## Como funciona o Pocket Flow? As [100 linhas](https://github.com/The-Pocket/PocketFlow/blob/main/pocketflow/__init__.py) capturam a abstração central dos frameworks LLM: o Grafo!

A partir daí, é fácil implementar padrões de design populares como ([Multi-](https://the-pocket.github.io/PocketFlow/design_pattern/multi_agent.html))[Agentes](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html), [Fluxo de Trabalho](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html), [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html), etc.

✨ Abaixo estão tutoriais básicos:
| Nome | Dificuldade | Descrição | | :-------------: | :-------------: | :--------------------- | | [Chat](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat) | ☆☆☆
*Básico* | Um chatbot básico com histórico de conversação | | [Saída Estruturada](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-structured-output) | ☆☆☆
*Básico* | Extraindo dados estruturados de currículos por prompt | | [Fluxo de Trabalho](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-workflow) | ☆☆☆
*Básico* | Um fluxo de escrita que esboça, escreve conteúdo e aplica estilo | | [Agente](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-agent) | ☆☆☆
*Básico* | Um agente de pesquisa que pode buscar na web e responder perguntas | | [RAG](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-rag) | ☆☆☆
*Básico* | Um processo simples de Geração Aumentada por Recuperação | | [Processamento em Lote](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-batch) | ☆☆☆
*Básico* | Um processador em lote que traduz conteúdo markdown para vários idiomas | | [Streaming](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-llm-streaming) | ☆☆☆
*Básico* | Uma demonstração de streaming LLM em tempo real com capacidade de interrupção pelo usuário | | [Guardrail de Chat](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-guardrail) | ☆☆☆
*Básico* | Um chatbot de consultoria de viagens que processa apenas consultas relacionadas a viagens | | [Map-Reduce](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-map-reduce) | ★☆☆
*Iniciante* | Um processador de qualificação de currículos usando o padrão map-reduce para avaliação em lote | | [Multi-Agente](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-multi-agent) | ★☆☆
*Iniciante* | Um jogo de Tabu para comunicação assíncrona entre dois agentes | | [Supervisor](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-supervisor) | ★☆☆
*Iniciante* | O agente de pesquisa está ficando pouco confiável... Vamos criar um processo de supervisão | | [Paralelo](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch) | ★☆☆
*Iniciante* | Uma demonstração de execução paralela que mostra um aumento de velocidade de 3x | | [Fluxo Paralelo](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-parallel-batch-flow) | ★☆☆
*Iniciante* | Uma demonstração de processamento de imagem paralelo mostrando um aumento de velocidade de 8x com múltiplos filtros | | [Voto Majoritário](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-majority-vote) | ★☆☆
*Iniciante* | Melhore a precisão de raciocínio agregando múltiplas tentativas de solução | | [Pensamento](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-thinking) | ★☆☆
*Iniciante* | Resolva problemas complexos de raciocínio através de Cadeia-de-Pensamento | | [Memória](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-chat-memory) | ★☆☆
*Iniciante* | Um chatbot com memória de curto e longo prazo | | [Text2SQL](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-text2sql) | ★☆☆
*Iniciante* | Converta linguagem natural para consultas SQL com um loop de autodepuração | | [MCP](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-mcp) | ★☆☆
*Iniciante* | Agente usando o Protocolo de Contexto de Modelo para operações numéricas | | [A2A](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-a2a) | ★☆☆
*Iniciante* | Agente envolvido com o protocolo Agente-para-Agente para comunicação entre agentes | | [Web HITL](https://github.com/The-Pocket/PocketFlow/tree/main/cookbook/pocketflow-web-hitl) | ★☆☆
*Iniciante* | Um serviço web mínimo para um loop de revisão humana com atualizações SSE |
👀 Quer ver outros tutoriais para iniciantes? [Crie uma issue!](https://github.com/The-Pocket/PocketFlow/issues/new) ## Como usar o Pocket Flow? 🚀 Através da **Codificação Agêntica**—o paradigma mais rápido de desenvolvimento de aplicativos LLM—onde *humanos projetam* e *agentes codificam*!
IMAGE ALT TEXT

✨ Abaixo estão exemplos de aplicativos LLM mais complexos:
| Nome do Aplicativo | Dificuldade | Tópicos | Design Humano | Código do Agente | | :-------------: | :-------------: | :---------------------: | :---: | :---: | | [Construir Cursor com Cursor](https://github.com/The-Pocket/Tutorial-Cursor)
Logo chegaremos à singularidade ... | ★★★
*Avançado* | [Agente](https://the-pocket.github.io/PocketFlow/design_pattern/agent.html) | [Doc de Design](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/docs/design.md) | [Código de Fluxo](https://github.com/The-Pocket/Tutorial-Cursor/blob/main/flow.py) | [Construtor de Conhecimento de Base de Código](https://github.com/The-Pocket/Tutorial-Codebase-Knowledge)
A vida é curta demais para ficar olhando o código dos outros em confusão | ★★☆
*Médio* | [Fluxo de Trabalho](https://the-pocket.github.io/PocketFlow/design_pattern/workflow.html) | [Doc de Design](https://github.com/The-Pocket/Tutorial-Codebase-Knowledge/blob/main/docs/design.md) | [Código de Fluxo](https://github.com/The-Pocket/Tutorial-Codebase-Knowledge/blob/main/flow.py) | [Pergunte à IA Paul Graham](https://github.com/The-Pocket/Tutorial-YC-Partner)
Pergunte à IA Paul Graham, caso você não consiga entrar | ★★☆
*Médio* | [RAG](https://the-pocket.github.io/PocketFlow/design_pattern/rag.html)
[Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html)
[TTS](https://the-pocket.github.io/PocketFlow/utility_function/text_to_speech.html) | [Doc de Design](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/docs/design.md) | [Código de Fluxo](https://github.com/The-Pocket/Tutorial-AI-Paul-Graham/blob/main/flow.py) | [Resumidor de Youtube](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple)
Explica vídeos do YouTube para você como se você tivesse 5 anos | ★☆☆
*Iniciante* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html) | [Doc de Design](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/docs/design.md) | [Código de Fluxo](https://github.com/The-Pocket/Tutorial-Youtube-Made-Simple/blob/main/flow.py) | [Gerador de Abertura a Frio](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization)
Quebra-gelos instantâneos que transformam leads frios em quentes | ★☆☆
*Iniciante* | [Map Reduce](https://the-pocket.github.io/PocketFlow/design_pattern/mapreduce.html)
[Busca Web](https://the-pocket.github.io/PocketFlow/utility_function/websearch.html) | [Doc de Design](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/docs/design.md) | [Código de Fluxo](https://github.com/The-Pocket/Tutorial-Cold-Email-Personalization/blob/master/flow.py)
- Quer aprender **Codificação Agêntica**? - Confira [meu YouTube](https://www.youtube.com/@ZacharyLLM?sub_confirmation=1) para tutoriais em vídeo sobre como alguns dos aplicativos acima são feitos! - Quer construir seu próprio aplicativo LLM? Leia este [post](https://zacharyhuang.substack.com/p/agentic-coding-the-most-fun-way-to)! Comece com [este modelo](https://github.com/The-Pocket/PocketFlow-Template-Python)!