Implement LangGraph reflection agent with structured critic, rewrite loop, max_rounds cap, and CLI demo logging.: update README.md
This commit is contained in:
@@ -1,15 +1,44 @@
|
||||
# LangGraph Reflection Agent
|
||||
|
||||
This repository contains a simple implementation of a LangGraph agent that writes a short answer to a question, critiques it, and rewrites if necessary.
|
||||
Небольшой CLI-агент на `LangGraph`, который:
|
||||
|
||||
## Requirements
|
||||
1. пишет первичный ответ на вопрос;
|
||||
2. отдельным узлом `reflect` критикует его по полноте, конкретике и отсутствию воды;
|
||||
3. при `needs_revision` запускает `rewrite`;
|
||||
4. завершает работу после `ok` или по достижении `max_rounds`.
|
||||
|
||||
## Установка
|
||||
|
||||
```bash
|
||||
pip install langgraph langchain-openai
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
## Usage
|
||||
Для запуска нужен OpenAI-совместимый API:
|
||||
|
||||
```bash
|
||||
export OPENAI_API_KEY=...
|
||||
export OPENAI_BASE_URL=...
|
||||
export OPENAI_MODEL=...
|
||||
```
|
||||
|
||||
## Запуск
|
||||
|
||||
Запуск с вопросом из задания:
|
||||
|
||||
```bash
|
||||
python main.py "Объясни студенту разницу между tool и resource в MCP"
|
||||
```
|
||||
|
||||
Запуск без аргументов использует тот же вопрос по умолчанию:
|
||||
|
||||
```bash
|
||||
python main.py
|
||||
```
|
||||
|
||||
## Что реализовано
|
||||
|
||||
- `ReflectState(TypedDict)` с полями `question`, `draft`, `critique`, `verdict`, `round`, `max_rounds`
|
||||
- узлы `draft_answer`, `reflect`, `rewrite`
|
||||
- цикл `rewrite -> reflect` при `needs_revision`
|
||||
- ограничение числа доработок через `max_rounds`
|
||||
- CLI-демо с финальным ответом, вердиктом критика и количеством раундов
|
||||
|
||||
Reference in New Issue
Block a user