成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

看完MindSearch源碼,這就是我想要的Agent Plan!

發布于 2024-8-13 01:24
瀏覽
0收藏

AI Search已經成為大模型落地應用比較熱門的一個場景,OpenAI也推出了自家的AI搜索引擎產品SearchGPT,同時也有非常多AI Search項目開源:Felo、OpenPerPlex、AskHackers、OpenSearch GPT等等,應接不暇。

其中上周才開源的MindSearch,據稱基于LLM的Web搜索引擎Multi-agent框架,類似Perplexity.ai Pro 和 SearchGPT。

看完代碼發現主要是由Web Planner與Web Searcher 組成:

  • Web Planner 負責任務的拆解和動態規劃
  • Web Searcher 負責對子問題進行搜索和信息整合

看完MindSearch源碼,這就是我想要的Agent Plan!-AI.x社區

這其中Web Planner是核心,從代碼看它是一種樹狀任務規劃,動態迭代,有3種節點類型:root、search、response,每次增加若干節點并串行執行節點(主要是搜索功能),基于code interpreter實現。

在Agent系統中Plan是核心,而Web Planner這種規劃方式不僅可以用于搜索,它還可以用于Agentic RAG或者IM Agent(比如釘釘、飛書AI助手)等。

看完MindSearch源碼,這就是我想要的Agent Plan!-AI.x社區

上述Agentic RAG的例子,經過Web Planner拆解的結果和上圖的拆解結果比較接近,是一種不錯的Plan方式:

<|action_start|><|interpreter|>```python
graph = WebSearchGraph()


#添加原始問題為根節點
graph.add_root_node(node_cnotallow="與第五交響曲創作于同一世紀的交通工具是什么?", node_name="root")


#添加搜索子問題節點,確定第五交響曲的創作世紀
graph.add_node(node_name="第五交響曲創作世紀", node_cnotallow="貝多芬第五交響曲是哪個世紀創作的?")
#添加邊
graph.add_edge(start_node="root", end_node="第五交響曲創作世紀")


graph.add_node(node_name="同一世紀的交通工具", node_cnotallow=f"這一世紀主要交通工具是什么?")


graph.add_edge(start_node="第五交響曲創作世紀", end_node="同一世紀的交通工具")


graph.node("第五交響曲創作世紀")
graph.node("同一世紀的交通工具")
graph.node("response")
```<|action_end|>

Web Planner其中Plan部分的Prompt模版:

GRAPH_PROMPT_CN = """## 人物簡介
你是一個可以利用 Jupyter 環境 Python 編程的程序員。你可以利用提供的 API 來構建 Web 搜索圖,最終生成代碼并執行。


## API 介紹


下面是包含屬性詳細說明的 `WebSearchGraph` 類的 API 文檔:


### 類:`WebSearchGraph`


此類用于管理網絡搜索圖的節點和邊,并通過網絡代理進行搜索。


#### 初始化方法


初始化 `WebSearchGraph` 實例。


**屬性:**


- `nodes` (Dict[str, Dict[str, str]]): 存儲圖中所有節點的字典。每個節點由其名稱索引,并包含內容、類型以及其他相關信息。
- `adjacency_list` (Dict[str, List[str]]): 存儲圖中所有節點之間連接關系的鄰接表。每個節點由其名稱索引,并包含一個相鄰節點名稱的列表。




#### 方法:`add_root_node`


添加原始問題作為根節點。
**參數:**


- `node_content` (str): 用戶提出的問題。
- `node_name` (str, 可選): 節點名稱,默認為 'root'。




#### 方法:`add_node`


添加搜索子問題節點并返回搜索結果。
**參數:


- `node_name` (str): 節點名稱。
- `node_content` (str): 子問題內容。


**返回:**


- `str`: 返回搜索結果。




#### 方法:`add_response_node`


當前獲取的信息已經滿足問題需求,添加回復節點。


**參數:**


- `node_name` (str, 可選): 節點名稱,默認為 'response'。




#### 方法:`add_edge`


添加邊。


**參數:**


- `start_node` (str): 起始節點名稱。
- `end_node` (str): 結束節點名稱。




#### 方法:`reset`


重置節點和邊。




#### 方法:`node`


獲取節點信息。


```python
def node(self, node_name: str) -> str
```


**參數:**


- `node_name` (str): 節點名稱。


**返回:**


- `str`: 返回包含節點信息的字典,包含節點的內容、類型、思考過程(如果有)和前驅節點列表。


## 任務介紹
通過將一個問題拆分成能夠通過搜索回答的子問題(沒有關聯的問題可以同步并列搜索),每個搜索的問題應該是一個單一問題,即單個具體人、事、物、具體時間點、地點或知識點的問題,不是一個復合問題(比如某個時間段), 一步步構建搜索圖,最終回答問題。


## 注意事項


1. 注意,每個搜索節點的內容必須單個問題,不要包含多個問題(比如同時問多個知識點的問題或者多個事物的比較加篩選,類似 A, B, C 有什么區別,那個價格在哪個區間 -> 分別查詢)
2. 不要杜撰搜索結果,要等待代碼返回結果
3. 同樣的問題不要重復提問,可以在已有問題的基礎上繼續提問
4. 添加 response 節點的時候,要單獨添加,不要和其他節點一起添加,不能同時添加 response 節點和其他節點
5. 一次輸出中,不要包含多個代碼塊,每次只能有一個代碼塊
6. 每個代碼塊應該放置在一個代碼塊標記中,同時生成完代碼后添加一個<|action_end|>標志,如下所示:
    <|action_start|><|interpreter|>```python
    # 你的代碼塊
    ```<|action_end|>
7. 最后一次回復應該是添加node_name為'response'的 response 節點,必須添加 response 節點,不要添加其他節點
"""

Plan的few-shot示例:

graph_fewshot_example_cn = """
## 返回格式示例
<|action_start|><|interpreter|>```python
graph = WebSearchGraph()
graph.add_root_node(node_cnotallow="哪家大模型API最便宜?", node_name="root") # 添加原始問題作為根節點
graph.add_node(
        node_name="大模型API提供商", # 節點名稱最好有意義
        node_cnotallow="目前有哪些主要的大模型API提供商?")
graph.add_node(
        node_name="sub_name_2", # 節點名稱最好有意義
        node_cnotallow="content of sub_name_2")
...
graph.add_edge(start_node="root", end_node="sub_name_1")
...
graph.node("大模型API提供商"), graph.node("sub_name_2"), ...
```<|action_end|>
"""

https://github.com/InternLM/mindsearch
https://mindsearch.netlify.app/
https://arxiv.org/abs/2407.20183

本文轉載自PaperAgent,作者: PaperAgent ????

收藏
回復
舉報
回復
相關推薦
主站蜘蛛池模板: 99久久精品免费看国产免费软件 | 欧美一区二区三区在线播放 | 成人毛片在线观看 | 少妇淫片aaaaa毛片叫床爽 | 欧美国产日韩精品 | 久久网一区二区三区 | 国产日韩欧美一区 | 91精品国产综合久久久久久丝袜 | 久草新在线 | 国产免费拔擦拔擦8x高清 | 欧美日韩国产一区二区三区不卡 | 久久久久久久久久一区二区 | av免费网站在线观看 | www.国产一区| www.日韩| 在线观看毛片网站 | 久久免费精品 | a级毛片免费高清视频 | 日韩免费激情视频 | 亚洲一区二区av在线 | 亚洲国产视频一区二区 | 欧美国产日韩成人 | 亚洲视频中文字幕 | 蜜桃在线视频 | 在线一区 | 欧美一区二区三区视频 | 91麻豆精品国产91久久久更新资源速度超快 | 久草中文在线 | 国产精品日产欧美久久久久 | 欧美成人一区二免费视频软件 | 欧美日韩不卡 | 婷婷成人在线 | www久久国产 | 91伊人| 久久激情网 | 国产精品日韩一区 | 亚洲永久免费观看 | 欧美在线一区二区三区 | 欧美电影大全 | 亚洲国产精品久久久久 | 色综合99 |