-
Notifications
You must be signed in to change notification settings - Fork 6.6k
V4.11.0 features #5270
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
V4.11.0 features #5270
Conversation
|
* feat: error catch * feat: workflow catch error * perf: add catch error to node * feat: system tool error catch * catch error * fix: ts
* doc * perf: training queue code
* feat: 批量重试异常数据 & 报错信息国际化 - 新增“全部重试”按钮,支持批量重试所有训练异常数据 - 报错信息支持国际化,常见错误自动映射为 i18n key - 相关文档和 i18n 资源已同步更新 * feat: enhance error message and retry mechanism * feat: enhance error message and retry mechanism * feat: add retry_failed i18n key * feat: enhance error message and retry mechanism * feat: enhance error message and retry mechanism * feat: enhance error message and retry mechanism : 5 * feat: enhance error message and retry mechanism : 6 * feat: enhance error message and retry mechanism : 7 * feat: enhance error message and retry mechanism : 8
* perf: copy hook * doc * doc
* add app evaluation * fix * usage * variables * editing condition * var ui * isplus filter * migrate code * remove utils * name * update type * build * fix * fix * fix * delete comment * fix
* feat: update side bar layout; add login and logout logic at chat page * refactor: encapsulate login logic and reuse it in `LoginModal` and `Login` page * chore: improve some logics and comments * chore: improve some logics * chore: remove redundant side effect; add translations --------- Co-authored-by: Archer <[email protected]>
* eval scroll pagination * change eval list to manual pagination * number * fix build * fix
* version doc * version doc * doc * feat: eval model select * config eval model * perf: eval detail modal ui * doc * doc * fix: chat store reload
Preview mcp_server Image:
|
Preview sandbox Image:
|
Preview fastgpt Image:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces v4.11.0 features including application evaluation capabilities, workflow error handling improvements, and UX enhancements for the chat interface.
Key Changes
- Added application evaluation system (beta) for supervised scoring in the commercial version
- Implemented error catch branches for workflow nodes with catchError support
- Enhanced chat page UX with independent tab functionality and improved user interface
- Added new model configurations and system tracing support
Reviewed Changes
Copilot reviewed 191 out of 211 changed files in this pull request and generated 7 comments.
Show a summary per file
File | Description |
---|---|
projects/mcp_server/Dockerfile | Added packages/web dependency for MCP server build |
projects/app/src/web/core/workflow/utils.ts | Enhanced workflow utilities with error handling and adapted legacy nodes |
projects/app/src/web/core/chat/context/useChatStore.ts | Fixed storage format compatibility with version/state structure |
projects/app/src/web/core/app/api/evaluation.ts | New evaluation API endpoints for CRUD operations |
projects/app/src/service/core/dataset/queues/ | Refactored queue processing to use loops instead of recursion |
projects/app/src/pages/login/index.tsx | Simplified login page by extracting logic to reusable components |
projects/app/src/pages/chat/index.tsx | Major refactor for independent chat page with improved authentication |
projects/app/src/pageComponents/login/ | New modular login components with better separation of concerns |
projects/app/src/pageComponents/app/evaluation/ | Complete evaluation system UI implementation |
projects/app/src/pageComponents/app/detail/WorkflowComponents/ | Added error catch functionality to workflow nodes |
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
projects/app/src/pageComponents/app/detail/WorkflowComponents/Flow/nodes/render/NodeCard.tsx
Show resolved
Hide resolved
|
||
const parentId = node.parentNodeId; | ||
let sourceNodes: FlowNodeItemType[] = []; | ||
const sourceNodes = new Map<string, FlowNodeItemType>(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using Map instead of array for sourceNodes improves performance by avoiding repeated linear searches for duplicate checking.
Copilot uses AI. Check for mistakes.
const bd_vid = getBdVId(); | ||
if (bd_vid) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] The bd_vid check and early return logic could be extracted into a helper function for better readability and testability.
const bd_vid = getBdVId(); | |
if (bd_vid) { | |
if (shouldUsePasswordLogin()) { |
Copilot uses AI. Check for mistakes.
const { lastChatAppId, setSource, setAppId } = useChatStore(); | ||
const { userInfo, initUserInfo } = useUserStore(); | ||
|
||
const [isInitedUser, setIsIntedUser] = useState(false); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Variable name 'isIntedUser' appears to be a typo. Should likely be 'isInitedUser' to match the intended meaning.
const [isInitedUser, setIsIntedUser] = useState(false); | |
const [isInitedUser, setIsInitedUser] = useState(false); |
Copilot uses AI. Check for mistakes.
path: 'dataset', | ||
select: 'vectorModel' | ||
}, | ||
while (true) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The infinite while loop should have a clear exit condition comment or safety mechanism to prevent potential infinite loops in error scenarios.
Copilot uses AI. Check for mistakes.
|
||
const { register, handleSubmit } = useForm<updateEvalItemBody>(); | ||
|
||
return ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] This component is quite large (578 lines). Consider breaking it down into smaller sub-components for better maintainability and testing.
Copilot uses AI. Check for mistakes.
⏳ Processing in progress |
No description provided.