소스 검색

fix: LLM may not return `<think>` tag, cause thinking time keep increase (#13962)

tags/1.0.0
NFish 8 달 전
부모
커밋
ece25bce1a
No account linked to committer's email address
2개의 변경된 파일7개의 추가작업 그리고 6개의 파일을 삭제
  1. 3
    3
      web/.env.example
  2. 4
    3
      web/app/components/base/markdown.tsx

+ 3
- 3
web/.env.example 파일 보기

@@ -10,10 +10,10 @@ NEXT_PUBLIC_API_PREFIX=http://localhost:5001/console/api
# console or api domain.
# example: http://udify.app/api
NEXT_PUBLIC_PUBLIC_API_PREFIX=http://localhost:5001/api
# The APIFREX for MARKETPLACE
NEXT_PUBLIC_MARKETPLACE_API_PREFIX=http://localhost:5002/api
# The API PREFIX for MARKETPLACE
NEXT_PUBLIC_MARKETPLACE_API_PREFIX=https://marketplace.dify.ai/api/v1
# The URL for MARKETPLACE
NEXT_PUBLIC_MARKETPLACE_URL_PREFIX=
NEXT_PUBLIC_MARKETPLACE_URL_PREFIX=https://marketplace.dify.ai

# SENTRY
NEXT_PUBLIC_SENTRY_DSN=

+ 4
- 3
web/app/components/base/markdown.tsx 파일 보기

@@ -68,12 +68,13 @@ const preprocessLaTeX = (content: string) => {
}

const preprocessThinkTag = (content: string) => {
if (!content.trim().startsWith('<think>\n'))
if (!(content.trim().startsWith('<think>\n') || content.trim().startsWith('<details style=')))
return content

return flow([
(str: string) => str.replace('<think>\n', '<details>\n'),
(str: string) => str.replace('\n</think>', '\n[ENDTHINKFLAG]</details>'),
(str: string) => str.replaceAll('<think>\n', '<details>\n'),
(str: string) => str.replaceAll('\n</think>', '\n[ENDTHINKFLAG]</details>'),
(str: string) => str.replaceAll('\n</details>', '\n[ENDTHINKFLAG]</details>'),
])(content)
}


Loading…
취소
저장