# web3-agent **Repository Path**: alan223/web3-agent ## Basic Information - **Project Name**: web3-agent - **Description**: A multi-agent system that analyzes smart contracts and Web3 project risks using RAG and tool-based reasoning. - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-07 - **Last Updated**: 2026-03-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Web3 链上智能投研助手 基于 LangGraph 构建的多智能体 Web3 助手,支持链上查询、安全审计和知识库问答。 项目当前采用 Supervisor + Worker 的多智能体架构,并已将 RAG 管线升级为 LlamaIndex + ChromaDB + DashScope Rerank。 ## 功能概览 ### 1. 链上与行情查询 - `get_eth_balance`: 查询地址 ETH 余额。 - `get_erc20_balance`: 查询地址 ERC-20 代币余额。 - `get_gas_price`: 查询以太坊主网 Gas 价格。 - `get_token_price`: 查询币种实时价格(如 BTC/ETH/SOL)。 ### 2. 安全审计 - `check_token_risk`: 代币合约风险评估(Honeypot/税率等)。 - `check_address_risk`: 地址风险行为检测(黑名单/钓鱼等)。 - `check_nft_risk`: NFT 合约风险检测。 - `check_approve_risk`: 地址授权风险排查。 ### 3. RAG 知识检索 - `retrieve_whitepaper`: 检索本地 Web3 知识文档并返回结构化片段。 - 检索链路:Query Rewrite -> Chroma 向量召回 -> DashScope Rerank(`qwen3-vl-rerank`) -> Top-N 返回。 ### 4. 多轮上下文记忆 - 使用 LangGraph `MemorySaver` 和 thread 级会话上下文。 - 支持跨轮参数继承(如地址、合约、代币符号)。 ## 架构说明 ### 多智能体流程 ```text User Input -> Supervisor(意图拆解/任务规划) -> Onchain Worker | Security Worker | RAG Worker -> ToolNode 执行 -> Update Results -> Supervisor(继续调度或收口) -> Final Answer ``` ### RAG 流程(当前实现) ```text Documents(data/*.md|*.pdf) -> LlamaIndex Node Parsing (MarkdownNodeParser + SentenceSplitter) -> DashScope Embedding(text-embedding-v4) -> ChromaDB Persistent Collection(web3_docs) -> Query Rewrite(DeepSeek) -> Vector Retrieval(top_k=10) -> DashScope Rerank(qwen3-vl-rerank, top_n=4) -> Return Context ``` ## 当前技术栈 - Agent Orchestration: `langgraph` (`StateGraph`, `ToolNode`, `MemorySaver`) - LLM: DeepSeek Chat(`langchain_openai.ChatOpenAI`) - Onchain: `web3.py` - Security Data: GoPlus API - Market Data: CoinGecko API - RAG Indexing: LlamaIndex - Vector DB: ChromaDB(PersistentClient) - Embedding: DashScope `text-embedding-v4` - Reranker: DashScope API `qwen3-vl-rerank` ## 说明 - 旧版 FAISS/LangChain RAG 代码已在部分文件中保留注释,当前运行链路以 ChromaDB 版本为准。