Compare commits

...

4 Commits

Author SHA1 Message Date
e8bfda6020 Fix: Click the reset button on the agent page shared externally, and the greeting in conversation mode should not be deleted. #10567 (#10571)
### What problem does this PR solve?

Fix: Click the reset button on the agent page shared externally, and the
greeting in conversation mode should not be deleted. #10567
### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
2025-10-15 11:22:37 +08:00
34c54cd459 Fix: agent templates... (#10564)
### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
2025-10-15 10:31:30 +08:00
3d873d98fb Update README (#10563)
### Type of change

- [x] Documentation Update
2025-10-15 09:58:07 +08:00
fbe25b5add Fix release notes (#10560)
### What problem does this PR solve?

Use infinity 0.6.0

### Type of change

- [x] Documentation Update

Signed-off-by: Jin Hai <haijin.chn@gmail.com>
2025-10-15 09:27:52 +08:00
12 changed files with 33 additions and 17 deletions

View File

@ -84,8 +84,8 @@ Try our demo at [https://demo.ragflow.io](https://demo.ragflow.io).
## 🔥 Latest Updates ## 🔥 Latest Updates
- 2025-10-15 Supports orchestrable ingestion pipeline.
- 2025-08-08 Supports OpenAI's latest GPT-5 series models. - 2025-08-08 Supports OpenAI's latest GPT-5 series models.
- 2025-08-04 Supports new models, including Kimi K2 and Grok 4.
- 2025-08-01 Supports agentic workflow and MCP. - 2025-08-01 Supports agentic workflow and MCP.
- 2025-05-23 Adds a Python/JavaScript code executor component to Agent. - 2025-05-23 Adds a Python/JavaScript code executor component to Agent.
- 2025-05-05 Supports cross-language query. - 2025-05-05 Supports cross-language query.

View File

@ -80,8 +80,8 @@ Coba demo kami di [https://demo.ragflow.io](https://demo.ragflow.io).
## 🔥 Pembaruan Terbaru ## 🔥 Pembaruan Terbaru
- 2025-10-15 Dukungan untuk jalur data yang terorkestrasi.
- 2025-08-08 Mendukung model seri GPT-5 terbaru dari OpenAI. - 2025-08-08 Mendukung model seri GPT-5 terbaru dari OpenAI.
- 2025-08-04 Mendukung model baru, termasuk Kimi K2 dan Grok 4.
- 2025-08-01 Mendukung alur kerja agen dan MCP. - 2025-08-01 Mendukung alur kerja agen dan MCP.
- 2025-05-23 Menambahkan komponen pelaksana kode Python/JS ke Agen. - 2025-05-23 Menambahkan komponen pelaksana kode Python/JS ke Agen.
- 2025-05-05 Mendukung kueri lintas bahasa. - 2025-05-05 Mendukung kueri lintas bahasa.

View File

@ -60,8 +60,8 @@
## 🔥 最新情報 ## 🔥 最新情報
- 2025-10-15 オーケストレーションされたデータパイプラインのサポート。
- 2025-08-08 OpenAI の最新 GPT-5 シリーズモデルをサポートします。 - 2025-08-08 OpenAI の最新 GPT-5 シリーズモデルをサポートします。
- 2025-08-04 新モデル、キミK2およびGrok 4をサポート。
- 2025-08-01 エージェントワークフローとMCPをサポート。 - 2025-08-01 エージェントワークフローとMCPをサポート。
- 2025-05-23 エージェントに Python/JS コードエグゼキュータコンポーネントを追加しました。 - 2025-05-23 エージェントに Python/JS コードエグゼキュータコンポーネントを追加しました。
- 2025-05-05 言語間クエリをサポートしました。 - 2025-05-05 言語間クエリをサポートしました。

View File

@ -60,8 +60,8 @@
## 🔥 업데이트 ## 🔥 업데이트
- 2025-10-15 조정된 데이터 파이프라인 지원.
- 2025-08-08 OpenAI의 최신 GPT-5 시리즈 모델을 지원합니다. - 2025-08-08 OpenAI의 최신 GPT-5 시리즈 모델을 지원합니다.
- 2025-08-04 새로운 모델인 Kimi K2와 Grok 4를 포함하여 지원합니다.
- 2025-08-01 에이전트 워크플로우와 MCP를 지원합니다. - 2025-08-01 에이전트 워크플로우와 MCP를 지원합니다.
- 2025-05-23 Agent에 Python/JS 코드 실행기 구성 요소를 추가합니다. - 2025-05-23 Agent에 Python/JS 코드 실행기 구성 요소를 추가합니다.
- 2025-05-05 언어 간 쿼리를 지원합니다. - 2025-05-05 언어 간 쿼리를 지원합니다.

View File

@ -80,8 +80,8 @@ Experimente nossa demo em [https://demo.ragflow.io](https://demo.ragflow.io).
## 🔥 Últimas Atualizações ## 🔥 Últimas Atualizações
- 10-15-2025 Suporte para pipelines de dados orquestrados.
- 08-08-2025 Suporta a mais recente série GPT-5 da OpenAI. - 08-08-2025 Suporta a mais recente série GPT-5 da OpenAI.
- 04-08-2025 Suporta novos modelos, incluindo Kimi K2 e Grok 4.
- 01-08-2025 Suporta fluxo de trabalho agente e MCP. - 01-08-2025 Suporta fluxo de trabalho agente e MCP.
- 23-05-2025 Adicione o componente executor de código Python/JS ao Agente. - 23-05-2025 Adicione o componente executor de código Python/JS ao Agente.
- 05-05-2025 Suporte a consultas entre idiomas. - 05-05-2025 Suporte a consultas entre idiomas.

View File

@ -83,8 +83,8 @@
## 🔥 近期更新 ## 🔥 近期更新
- 2025-10-15 支援可編排的資料管道。
- 2025-08-08 支援 OpenAI 最新的 GPT-5 系列模型。 - 2025-08-08 支援 OpenAI 最新的 GPT-5 系列模型。
- 2025-08-04 支援 Kimi K2 和 Grok 4 等模型.
- 2025-08-01 支援 agentic workflow 和 MCP - 2025-08-01 支援 agentic workflow 和 MCP
- 2025-05-23 為 Agent 新增 Python/JS 程式碼執行器元件。 - 2025-05-23 為 Agent 新增 Python/JS 程式碼執行器元件。
- 2025-05-05 支援跨語言查詢。 - 2025-05-05 支援跨語言查詢。

View File

@ -83,8 +83,8 @@
## 🔥 近期更新 ## 🔥 近期更新
- 2025-08-08 支持 OpenAI 最新的 GPT-5 系列模型. - 2025-10-15 支持可编排的数据管道。
- 2025-08-04 新增对 Kimi K2 和 Grok 4 等模型的支持. - 2025-08-08 支持 OpenAI 最新的 GPT-5 系列模型。
- 2025-08-01 支持 agentic workflow 和 MCP。 - 2025-08-01 支持 agentic workflow 和 MCP。
- 2025-05-23 Agent 新增 Python/JS 代码执行器组件。 - 2025-05-23 Agent 新增 Python/JS 代码执行器组件。
- 2025-05-05 支持跨语言查询。 - 2025-05-05 支持跨语言查询。

View File

@ -1,15 +1,14 @@
{ {
"id": 26, "id": 26,
"title": { "title": {
"en": "Stock Research Report Workflow", "en": "Stock Research Report Agent",
"zh": "股票研究报告工作流" "zh": "股票研究报告智能体"
}, },
"description": { "description": {
"en": "This template helps financial analysts quickly organize information — it can automatically retrieve company data, consolidate financial metrics, and integrate research report insights.", "en": "This template helps financial analysts quickly organize information — it can automatically retrieve company data, consolidate financial metrics, and integrate research report insights.",
"zh": "这个模板可以帮助金融分析师快速整理信息——它能够自动获取公司数据、整合财务指标,并汇总研报观点。" "zh": "这个模板可以帮助金融分析师快速整理信息——它能够自动获取公司数据、整合财务指标,并汇总研报观点。"
}, },
"canvas_type": "Recommended", "canvas_type": "Recommended",
"canvas_category": "dataflow_canvas",
"dsl": { "dsl": {
"components": { "components": {
"Agent:ManyToesBrush": { "Agent:ManyToesBrush": {

View File

@ -51,7 +51,7 @@ from rag.utils.redis_conn import REDIS_CONN
@manager.route('/templates', methods=['GET']) # noqa: F821 @manager.route('/templates', methods=['GET']) # noqa: F821
@login_required @login_required
def templates(): def templates():
return get_json_result(data=[c.to_dict() for c in CanvasTemplateService.query(canvas_category=CanvasCategory.Agent)]) return get_json_result(data=[c.to_dict() for c in CanvasTemplateService.get_all()])
@manager.route('/rm', methods=['POST']) # noqa: F821 @manager.route('/rm', methods=['POST']) # noqa: F821

View File

@ -200,12 +200,14 @@ export const useSendAgentMessage = ({
beginParams, beginParams,
isShared, isShared,
refetch, refetch,
isTaskMode: isTask,
}: { }: {
url?: string; url?: string;
addEventList?: (data: IEventList, messageId: string) => void; addEventList?: (data: IEventList, messageId: string) => void;
beginParams?: any[]; beginParams?: any[];
isShared?: boolean; isShared?: boolean;
refetch?: () => void; refetch?: () => void;
isTaskMode?: boolean;
}) => { }) => {
const { id: agentId } = useParams(); const { id: agentId } = useParams();
const { handleInputChange, value, setValue } = useHandleMessageInputChange(); const { handleInputChange, value, setValue } = useHandleMessageInputChange();
@ -217,7 +219,7 @@ export const useSendAgentMessage = ({
return answerList[0]?.message_id; return answerList[0]?.message_id;
}, [answerList]); }, [answerList]);
const isTaskMode = useIsTaskMode(); const isTaskMode = useIsTaskMode(isTask);
const { findReferenceByMessageId } = useFindMessageReference(answerList); const { findReferenceByMessageId } = useFindMessageReference(answerList);
const prologue = useGetBeginNodePrologue(); const prologue = useGetBeginNodePrologue();
@ -230,6 +232,7 @@ export const useSendAgentMessage = ({
addNewestOneQuestion, addNewestOneQuestion,
addNewestOneAnswer, addNewestOneAnswer,
removeAllMessages, removeAllMessages,
removeAllMessagesExceptFirst,
scrollToBottom, scrollToBottom,
} = useSelectDerivedMessages(); } = useSelectDerivedMessages();
const { addEventList: addEventListFun } = useContext(AgentChatLogContext); const { addEventList: addEventListFun } = useContext(AgentChatLogContext);
@ -321,8 +324,18 @@ export const useSendAgentMessage = ({
stopOutputMessage(); stopOutputMessage();
resetAnswerList(); resetAnswerList();
setSessionId(null); setSessionId(null);
removeAllMessages(); if (isTaskMode) {
}, [resetAnswerList, removeAllMessages, stopOutputMessage]); removeAllMessages();
} else {
removeAllMessagesExceptFirst();
}
}, [
stopOutputMessage,
resetAnswerList,
isTaskMode,
removeAllMessages,
removeAllMessagesExceptFirst,
]);
const handlePressEnter = useCallback(() => { const handlePressEnter = useCallback(() => {
if (trim(value) === '') return; if (trim(value) === '') return;

View File

@ -27,13 +27,16 @@ export function useSelectBeginNodeDataInputs() {
); );
} }
export function useIsTaskMode() { export function useIsTaskMode(isTask?: boolean) {
const getNode = useGraphStore((state) => state.getNode); const getNode = useGraphStore((state) => state.getNode);
return useMemo(() => { return useMemo(() => {
if (typeof isTask === 'boolean') {
return isTask;
}
const node = getNode(BeginId); const node = getNode(BeginId);
return node?.data?.form?.mode === AgentDialogueMode.Task; return node?.data?.form?.mode === AgentDialogueMode.Task;
}, [getNode]); }, [getNode, isTask]);
} }
export const useGetBeginNodeDataQuery = () => { export const useGetBeginNodeDataQuery = () => {

View File

@ -59,6 +59,7 @@ export const useSendNextSharedMessage = (
addEventList, addEventList,
beginParams: params, beginParams: params,
isShared: true, isShared: true,
isTaskMode,
}); });
const ok = useCallback( const ok = useCallback(