-
Notifications
You must be signed in to change notification settings - Fork 0
1 #1
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
base: main
Are you sure you want to change the base?
1 #1
Conversation
Someone is attempting to deploy a commit to a Personal Account owned by @PLA888 on Vercel. @PLA888 first needs to authorize it. |
…ies to models through env var NEXT_PUBLIC_VISION_MODELS.
Bumps [@testing-library/react](https://github.com/testing-library/react-testing-library) from 16.0.1 to 16.1.0. - [Release notes](https://github.com/testing-library/react-testing-library/releases) - [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md) - [Commits](testing-library/react-testing-library@v16.0.1...v16.1.0) --- updated-dependencies: - dependency-name: "@testing-library/react" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
面具“以文搜图”改成“AI文生图”,微调提示让图片生成更稳定无水印
…testing-library/react-16.1.0 chore(deps-dev): bump @testing-library/react from 16.0.1 to 16.1.0
Update google models to add gemini-2.0
add gemini-exp-1206, gemini-2.0-flash-thinking-exp-1219
feat: runtime configuration of vision-capable models
Update README.md
…deepseek-corder models), so that user can use openai and deepseek at same time with different api url&key
fix model leak issue
Feat/support 302ai provider
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.
Actionable comments posted: 11
🧹 Nitpick comments (14)
.env.template (2)
7-17
: Inconsistent comment languageThe comments for
CODE
andPROXY_URL
were changed to English while other comments remain in a mix of languages. Consider maintaining consistency throughout the file.
79-90
: Maintain consistent comment formattingKeep the comment prefix consistent throughout the file.
-### siliconflow Api key (optional) +# siliconflow Api key (optional) SILICONFLOW_API_KEY= -### siliconflow Api url (optional) +# siliconflow Api url (optional) SILICONFLOW_URL= -### 302.AI Api key (optional) +# 302.AI Api key (optional) AI302_API_KEY= -### 302.AI Api url (optional) +# 302.AI Api url (optional) AI302_URL=app/client/platforms/ai302.ts (2)
243-245
: Console error should use proper loggingConsider using a proper error logging mechanism.
- console.log("[Request] failed to make a chat request", e); + console.error("[Request] failed to make a chat request", e);
268-268
: Maintain language consistencyComments should be in English for consistency with the rest of the codebase.
- console.log("[Models]", chatModels); + console.log("[Models]", chatModels); - let seq = 1000; //同 Constant.ts 中的排序保持一致 + let seq = 1000; // Keep consistent with sorting in Constant.tsAlso applies to: 274-274
app/api/302ai.ts (1)
19-19
: Remove or conditionally enable console loggingProduction logs should be properly managed.
- console.log("[302.AI Route] params ", params); + if (process.env.NODE_ENV === "development") { + console.log("[302.AI Route] params ", params); + } - console.log("[Proxy] ", path); - console.log("[Base Url]", baseUrl); + if (process.env.NODE_ENV === "development") { + console.log("[Proxy] ", path); + console.log("[Base Url]", baseUrl); + }Also applies to: 57-58
README_JA.md (1)
79-79
: Minor Japanese grammar improvementThe expression 「ことができる」 might be redundant in this context.
-またはウォッチしたり、作者をフォローすることで、新機能の更新通知をすぐに受け取ることができます。 +またはウォッチしたり、作者をフォローすることで、新機能の更新通知をすぐに受け取れます。README_CN.md (1)
379-379
: Minor Chinese grammar improvementMissing measure word in Chinese.
-- [one-api](https://github.com/songquanpeng/one-api): 一站式大模型额度管理平台,支持市面上所有主流大语言模型 +- [one-api](https://github.com/songquanpeng/one-api): 一站式大模型额度管理平台,支持市面上所有主流的大语言模型README.md (6)
16-16
: Fix grammar: Use proper spacing around commas.The description should have proper spacing around commas for better readability.
-✨ Light and Fast AI Assistant,with Claude, DeepSeek, GPT4 & Gemini Pro support. +✨ Light and Fast AI Assistant, with Claude, DeepSeek, GPT4 & Gemini Pro support.
32-34
: Fix grammar: Use correct macOS capitalization.The operating system name should be "macOS" not "MacOS" according to Apple's official branding.
-[MacOS-image]: https://img.shields.io/badge/-MacOS-black?logo=apple +[MacOS-image]: https://img.shields.io/badge/-macOS-black?logo=apple
88-88
: Fix grammar: Use correct macOS capitalization.Consistent with the earlier fix, use "macOS" instead of "MacOS".
-- Compact client (~5MB) on Linux/Windows/MacOS, [download it now](https://github.com/Yidadaa/ChatGPT-Next-Web/releases) +- Compact client (~5MB) on Linux/Windows/macOS, [download it now](https://github.com/Yidadaa/ChatGPT-Next-Web/releases)
165-165
: Fix grammar: Add missing article.The sentence is missing the article "the" before "author".
-You can star or watch this project or follow author to get release notifications in time. +You can star or watch this project or follow the author to get release notifications in time.
430-438
: Fix markdown: Add language specification to code block.The code block for MCP Docker deployment is missing language specification.
-``` +```shell docker run -d -p 3000:3000 \ -e OPENAI_API_KEY=sk-xxxx \ -e CODE=your-password \ -e ENABLE_MCP=true \ yidadaa/chatgpt-next-web--- `455-455`: **Fix grammar: Use correct FAQ expansion.** "Frequent Ask Questions" should be "Frequently Asked Questions". ```diff -- [Frequent Ask Questions](./docs/faq-en.md) +- [Frequently Asked Questions](./docs/faq-en.md)
app/client/api.ts (1)
244-366
: Consider refactoring the complex getHeaders function.While the getHeaders function works correctly, it has become quite complex with the addition of multiple providers. The nested functions and large conditional chains make it harder to maintain.
Consider extracting provider-specific logic into separate functions or a provider configuration map:
+const PROVIDER_CONFIGS = { + [ServiceProvider.Google]: { + getApiKey: (store: any) => store.googleApiKey, + authHeader: "x-goog-api-key", + noBearer: true + }, + [ServiceProvider.Azure]: { + getApiKey: (store: any) => store.azureApiKey, + authHeader: "api-key", + noBearer: true + }, + // ... other providers +}; + +function getProviderConfig(providerName: ServiceProvider) { + return PROVIDER_CONFIGS[providerName] || { + getApiKey: (store: any) => store.openaiApiKey, + authHeader: "Authorization", + noBearer: false + }; +}This would make the function more maintainable and easier to extend for new providers.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (8)
.env.template
(1 hunks)README.md
(10 hunks)README_CN.md
(9 hunks)README_JA.md
(1 hunks)app/api/302ai.ts
(1 hunks)app/api/[provider]/[...path]/route.ts
(1 hunks)app/client/api.ts
(5 hunks)app/client/platforms/ai302.ts
(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- app/api/[provider]/[...path]/route.ts
🧰 Additional context used
🪛 LanguageTool
README_JA.md
[uncategorized] ~79-~79: 「ことができる」という表現は冗長な可能性があります。
Context: ...またはウォッチしたり、作者をフォローすることで、新機能の更新通知をすぐに受け取ることができます。 ## ページアクセスパスワードを設定する > パスワードを設定す...
(DOUSI_KOTOGADEKIRU)
README_CN.md
[uncategorized] ~379-~379: 数词与名词之间一般应存在量词,可能缺少量词。
Context: ...tps://github.com/songquanpeng/one-api): 一站式大模型额度管理平台,支持市面上所有主流大语言模型 ## 开源协议 [MIT...
(wa5)
README.md
[grammar] ~20-~20: The operating system from Apple is written “macOS”.
Context: ...[Windows][Windows-image]][download-url] [![MacOS][MacOS-image]][download-url] [![Linux][...
(MAC_OS)
[grammar] ~88-~88: The operating system from Apple is written “macOS”.
Context: ... Compact client (~5MB) on Linux/Windows/MacOS, [download it now](https://github.com/Y...
(MAC_OS)
[uncategorized] ~124-~124: This verb does not appear to agree with the subject. Consider using a different form.
Context: ... supports Artifacts & SD - 🚀 v2.10.1 support Google Gemini Pro model. - 🚀 v2.9.11 y...
(AI_EN_LECTOR_REPLACEMENT_VERB_AGREEMENT)
[style] ~127-~127: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...lient that runs across all platforms! - 🚀 v2.7 let's share conversations as image...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~128-~128: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...tions as image, or share to ShareGPT! - 🚀 v2.0 is released, now you can create pr...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[uncategorized] ~165-~165: You might be missing the article “the” here.
Context: ...an star or watch this project or follow author to get release notifications in time. ...
(AI_EN_LECTOR_MISSING_DETERMINER_THE)
[uncategorized] ~185-~185: You might be missing the article “a” here.
Context: ...ai api key, join multiple api keys with comma. ### BASE_URL
(optional) > Default:...
(AI_EN_LECTOR_MISSING_DETERMINER_A)
[uncategorized] ~316-~316: A comma might be missing here.
Context: ...(optional) > Default: Empty > Example: +llama,+claude-2,-gpt-3.5-turbo,gpt-4-1106-preview=gpt-4-turbo
means a...
(AI_EN_LECTOR_MISSING_PUNCTUATION_COMMA)
[uncategorized] ~316-~316: You might be missing the article “the” here.
Context: ...4-turbomeans add
llama, claude-2to model list, and remove
gpt-3.5-turbo` from l...
(AI_EN_LECTOR_MISSING_DETERMINER_THE)
[uncategorized] ~316-~316: You might be missing the article “the” here.
Context: ...l list, and remove gpt-3.5-turbo
from list, and display gpt-4-1106-preview
as `g...
(AI_EN_LECTOR_MISSING_DETERMINER_THE)
[uncategorized] ~323-~323: You might be missing the article “the” here.
Context: ...t35will show option
gpt35(Azure)` in model list. > If you only can use Azure model...
(AI_EN_LECTOR_MISSING_DETERMINER_THE)
[uncategorized] ~324-~324: These words/punctuation marks might seem a little out of order. For clarity and coherence, try switching them around.
Context: ... gpt35(Azure)
in model list. > If you only can use Azure model, `-all,+gpt-3.5-turbo@A...
(AI_EN_LECTOR_REPLACEMENT_WORD_ORDER)
[uncategorized] ~324-~324: You might be missing the article “the” here.
Context: ... will gpt35(Azure)
the only option in model list. For ByteDance: use `modelName@by...
(AI_EN_LECTOR_MISSING_DETERMINER_THE)
[uncategorized] ~327-~327: You might be missing the article “the” here.
Context: ...w option Doubao-lite-4k(ByteDance)
in model list. ### DEFAULT_MODEL
(optional) ...
(AI_EN_LECTOR_MISSING_DETERMINER_THE)
[style] ~336-~336: In American English, abbreviations like “etc.” require a period.
Context: ...ike "vision", "claude-3", "gemini-1.5", etc). Add additional models to have vision...
(ETC_PERIOD)
[grammar] ~455-~455: Did you mean “Frequently Asked Questions” (= FAQ)?
Context: ...ted)](./docs/cloudflare-pages-en.md) - Frequent Ask Questions - [How to add a new ...
(FREQUENT_ASKED_QUESTIONS)
🪛 markdownlint-cli2 (0.17.2)
README.md
39-39: Images should have alternate text (alt text)
null
(MD045, no-alt-text)
53-53: Blank line inside blockquote
null
(MD028, no-blanks-blockquote)
62-62: Images should have alternate text (alt text)
null
(MD045, no-alt-text)
76-76: Bare URL used
null
(MD034, no-bare-urls)
432-432: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
452-452: Reference links and images should use a label that is defined
Missing link or image reference definition: "./docs"
(MD052, reference-links-images)
477-477: Images should have alternate text (alt text)
null
(MD045, no-alt-text)
🔇 Additional comments (23)
app/api/302ai.ts (1)
81-110
: Good security implementation for model filteringThe model filtering logic properly validates against server configuration and returns appropriate error responses.
README_JA.md (1)
1-327
: Well-structured Japanese documentationThe Japanese README is comprehensive and provides clear instructions for deployment and configuration. Great addition for Japanese users.
README_CN.md (2)
1-40
: Comprehensive rebranding and enterprise featuresThe rebranding to NextChat and addition of enterprise features section is well-executed. The documentation clearly presents the value proposition and features.
267-286
: Excellent documentation of new environment variablesThe new environment variables for Stability, MCP, and SiliconFlow are well-documented with clear descriptions.
README.md (7)
3-5
: LGTM! Clean rebranding implementation.The logo and branding links have been properly updated to reflect the NextChat rebrand. The new logo URL and domain references are consistent throughout.
43-49
: LGTM! Well-structured sponsorship section.The 302.AI sponsorship section is clearly presented with appropriate branding and description. The integration looks professional and adds value to users.
51-57
: LGTM! Effective iOS app promotion.The iOS app section is well-designed with proper call-to-action links and visual elements. The promotion effectively highlights the mobile offering.
65-77
: LGTM! Comprehensive Enterprise Edition description.The Enterprise Edition section effectively communicates the value proposition with clear feature descriptions and appropriate contact information for business inquiries.
97-97
: LGTM! Indonesian language support added.Good addition of Indonesian language support to the internationalization list, expanding the application's reach.
113-117
: LGTM! Updated roadmap reflects new capabilities.The roadmap updates accurately reflect the new features like Artifacts, Plugins, and Realtime Chat that have been implemented.
179-371
: LGTM! Comprehensive environment variables documentation.The extensive environment variables section properly documents all the new provider integrations and configuration options. This is essential for users to configure the multiple AI providers correctly.
app/client/api.ts (12)
2-27
: LGTM! Well-organized imports for multi-provider support.The imports are properly structured and comprehensive, covering all the new AI providers and necessary types. The organization supports the multi-provider architecture effectively.
33-33
: LGTM! TTS models addition.Good addition of TTS model types to support the new speech capabilities.
36-47
: LGTM! Comprehensive multimodal content interfaces.The multimodal content interfaces are well-designed to support both generic and provider-specific (Alibaba) content formats. This flexibility is important for different provider requirements.
51-51
: LGTM! Enhanced RequestMessage interface.The update to support both string and MultimodalContent[] for the content field provides excellent flexibility for multimodal interactions.
56-74
: LGTM! Enhanced LLMConfig and SpeechOptions interfaces.The additions to LLMConfig for DALL-E parameters and the new SpeechOptions interface properly support the expanded capabilities for image generation and text-to-speech functionality.
81-86
: LGTM! Enhanced ChatOptions with tool callbacks.The addition of tool-related callbacks (onBeforeTool, onAfterTool) properly supports the new plugin system and tool usage functionality.
95-106
: LGTM! Enhanced model interfaces for provider support.The updated LLMModel and new LLMModelProvider interfaces provide good structure for managing models across different providers with proper metadata.
110-110
: LGTM! Speech method addition to abstract API.The addition of the abstract speech method to the LLMApi class properly supports the TTS functionality across all providers.
139-183
: LGTM! Well-implemented provider factory pattern.The constructor refactoring to use a provider-based factory pattern is excellent. The switch statement is comprehensive and properly maps each ModelProvider to its corresponding API implementation. The default fallback to ChatGPTApi is appropriate.
201-201
: LGTM! Updated branding in share function.The update from "ChatGPT Next Web" to "NextChat" in the share attribution is consistent with the overall rebranding effort.
231-242
: LGTM! Useful utility functions.The getBearerToken and validString utility functions are well-implemented and will help standardize token handling and string validation across the codebase.
368-399
: LGTM! Clean service provider to client API mapping.The getClientApi function provides a clean mapping from ServiceProvider to the appropriate ClientApi instance. The switch statement is comprehensive and the default fallback is appropriate.
ANTHROPIC_API_VERSION= | ||
|
||
### anthropic claude Api url (optional) | ||
ANTHROPIC_URL= | ||
|
||
### (optional) | ||
WHITE_WEBDAV_ENDPOINTS= | ||
|
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.
🛠️ Refactor suggestion
Inconsistent comment formatting and missing documentation
The comment prefix changes from ###
to #
inconsistently. Also, WHITE_WEBDAV_ENDPOINTS
lacks format specification.
Consider adding format examples:
-### anthropic claude Api version. (optional)
+# anthropic claude Api version. (optional)
ANTHROPIC_API_VERSION=
-### anthropic claude Api url (optional)
+# anthropic claude Api url (optional)
ANTHROPIC_URL=
-### (optional)
+# (optional)
+# White-listed WebDAV endpoints, comma-separated
+# Example: https://webdav.example.com,https://storage.company.com/dav
WHITE_WEBDAV_ENDPOINTS=
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
### anthropic claude Api version. (optional) | |
ANTHROPIC_API_VERSION= | |
### anthropic claude Api url (optional) | |
ANTHROPIC_URL= | |
### (optional) | |
WHITE_WEBDAV_ENDPOINTS= | |
# anthropic claude Api version. (optional) | |
ANTHROPIC_API_VERSION= | |
# anthropic claude Api url. (optional) | |
ANTHROPIC_URL= | |
# (optional) | |
# White-listed WebDAV endpoints, comma-separated | |
# Example: https://webdav.example.com,https://storage.company.com/dav | |
WHITE_WEBDAV_ENDPOINTS= |
🤖 Prompt for AI Agents
In the .env.template file around lines 70 to 78, the comment prefixes are
inconsistent, switching between ### and #, and the WHITE_WEBDAV_ENDPOINTS
variable lacks format documentation. Standardize all comment prefixes to use ###
for consistency and add a clear format example or description for
WHITE_WEBDAV_ENDPOINTS to guide users on the expected input format.
// Please do not ask me why not send max_tokens, no reason, this param is just shit, I dont want to explain anymore. | ||
}; | ||
|
||
console.log("[Request] openai payload: ", requestPayload); |
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.
🛠️ Refactor suggestion
Remove debug console.log statements
Debug logging should not be in production code.
- console.log("[Request] openai payload: ", requestPayload);
+ // Payload logged during development only
- // console.log(chatPayload);
Also applies to: 135-135
🤖 Prompt for AI Agents
In app/client/platforms/ai302.ts at lines 120 and 135, remove the debug
console.log statements that output the OpenAI request payload. These debug logs
should not be present in production code to avoid unnecessary console clutter
and potential exposure of sensitive information.
// max_tokens: Math.max(modelConfig.max_tokens, 1024), | ||
// Please do not ask me why not send max_tokens, no reason, this param is just shit, I dont want to explain anymore. | ||
}; |
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.
Unprofessional comment should be removed or rewritten
The comment about max_tokens is unprofessional and doesn't provide helpful context.
- // max_tokens: Math.max(modelConfig.max_tokens, 1024),
- // Please do not ask me why not send max_tokens, no reason, this param is just shit, I dont want to explain anymore.
+ // max_tokens: Omitted to use model defaults
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
// max_tokens: Math.max(modelConfig.max_tokens, 1024), | |
// Please do not ask me why not send max_tokens, no reason, this param is just shit, I dont want to explain anymore. | |
}; | |
// max_tokens: Omitted to use model defaults | |
}; |
🤖 Prompt for AI Agents
In app/client/platforms/ai302.ts around lines 116 to 118, remove the
unprofessional comment about max_tokens or replace it with a clear, professional
explanation if necessary. Ensure the comment is concise and provides useful
context or reasoning for why max_tokens is not sent, avoiding informal language.
baseUrl = "https://" + baseUrl; | ||
} | ||
|
||
console.log("[Proxy Endpoint] ", baseUrl, path); |
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.
🛠️ Refactor suggestion
Remove or conditionally enable console logging
Production code shouldn't contain console.log statements. Consider using a debug flag or removing it entirely.
- console.log("[Proxy Endpoint] ", baseUrl, path);
+ if (process.env.NODE_ENV === "development") {
+ console.log("[Proxy Endpoint] ", baseUrl, path);
+ }
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
console.log("[Proxy Endpoint] ", baseUrl, path); | |
if (process.env.NODE_ENV === "development") { | |
console.log("[Proxy Endpoint] ", baseUrl, path); | |
} |
🤖 Prompt for AI Agents
In app/client/platforms/ai302.ts at line 71, the console.log statement should be
removed or wrapped in a conditional check using a debug flag to prevent logging
in production. Implement a mechanism to enable logging only when debugging is
needed, such as checking an environment variable or a configuration setting
before calling console.log.
// @ts-ignore | ||
runTools[index]["function"]["arguments"] += args; | ||
} |
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.
🛠️ Refactor suggestion
Avoid using @ts-ignore
TypeScript errors should be properly resolved rather than ignored.
- // @ts-ignore
- runTools[index]["function"]["arguments"] += args;
+ if (runTools[index] && typeof runTools[index] === 'object' && 'function' in runTools[index]) {
+ (runTools[index] as any).function.arguments += args;
+ }
🤖 Prompt for AI Agents
In app/client/platforms/ai302.ts around lines 182 to 184, the use of @ts-ignore
to suppress TypeScript errors should be removed. Instead, identify the exact
type error causing the issue with runTools[index]["function"]["arguments"] and
update the type definitions or perform necessary type assertions or checks to
ensure type safety without ignoring errors. This will properly resolve the
TypeScript error and maintain code correctness.
// @ts-ignore | ||
duplex: "half", |
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.
🛠️ Refactor suggestion
Avoid using @ts-ignore
The TypeScript error should be properly resolved.
- // @ts-ignore
- duplex: "half",
+ duplex: "half" as any, // Required for streaming request bodies
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
// @ts-ignore | |
duplex: "half", | |
duplex: "half" as any, // Required for streaming request bodies |
🤖 Prompt for AI Agents
In app/api/302ai.ts around lines 76 to 77, the use of @ts-ignore to suppress a
TypeScript error on the 'duplex' property should be removed. Investigate the
type definition for the object containing 'duplex' and update it to correctly
include or allow the 'duplex' property with the value "half". This may involve
extending or modifying the interface or type to properly type 'duplex' instead
of ignoring the error.
|
||
 | ||
[<img src="https://github.com/user-attachments/assets/903482d4-3e87-4134-9af1-f2588fa90659" height="50" width="" >](https://monica.im/?utm=nxcrp) |
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.
🛠️ Refactor suggestion
Add alt text for accessibility.
The sponsorship image is missing alt text, which is required for accessibility compliance.
-[<img src="https://github.com/user-attachments/assets/903482d4-3e87-4134-9af1-f2588fa90659" height="50" width="" >](https://monica.im/?utm=nxcrp)
+[<img src="https://github.com/user-attachments/assets/903482d4-3e87-4134-9af1-f2588fa90659" height="50" width="" alt="Monica AI Assistant" >](https://monica.im/?utm=nxcrp)
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
[<img src="https://github.com/user-attachments/assets/903482d4-3e87-4134-9af1-f2588fa90659" height="50" width="" >](https://monica.im/?utm=nxcrp) | |
[<img src="https://github.com/user-attachments/assets/903482d4-3e87-4134-9af1-f2588fa90659" height="50" width="" alt="Monica AI Assistant" >](https://monica.im/?utm=nxcrp) |
🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
39-39: Images should have alternate text (alt text)
null
(MD045, no-alt-text)
🤖 Prompt for AI Agents
In README.md at line 39, the sponsorship image lacks alt text, which is
important for accessibility. Add a descriptive alt attribute to the img tag
within the markdown link to provide meaningful alternative text for screen
readers.
<a href="https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/graphs/contributors"> | ||
<img src="https://contrib.rocks/image?repo=ChatGPTNextWeb/ChatGPT-Next-Web" /> | ||
</a> |
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.
🛠️ Refactor suggestion
Add alt text for contributors image.
The contributors image is missing alt text for accessibility.
-<a href="https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/graphs/contributors">
- <img src="https://contrib.rocks/image?repo=ChatGPTNextWeb/ChatGPT-Next-Web" />
-</a>
+<a href="https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/graphs/contributors">
+ <img src="https://contrib.rocks/image?repo=ChatGPTNextWeb/ChatGPT-Next-Web" alt="Contributors" />
+</a>
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
<a href="https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/graphs/contributors"> | |
<img src="https://contrib.rocks/image?repo=ChatGPTNextWeb/ChatGPT-Next-Web" /> | |
</a> | |
<a href="https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/graphs/contributors"> | |
<img src="https://contrib.rocks/image?repo=ChatGPTNextWeb/ChatGPT-Next-Web" alt="Contributors" /> | |
</a> |
🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
477-477: Images should have alternate text (alt text)
null
(MD045, no-alt-text)
🤖 Prompt for AI Agents
In README.md around lines 476 to 478, the contributors image lacks alt text,
which is important for accessibility. Add a descriptive alt attribute to the
<img> tag, such as alt="Contributors to ChatGPT-Next-Web repository", to provide
meaningful alternative text for screen readers.
README.md
Outdated
- 🚀 v2.15.8 Now supports Realtime Chat [#5672](https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/issues/5672) | ||
- 🚀 v2.15.4 The Application supports using Tauri fetch LLM API, MORE SECURITY! [#5379](https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/issues/5379) | ||
- 🚀 v2.15.0 Now supports Plugins! Read this: [NextChat-Awesome-Plugins](https://github.com/ChatGPTNextWeb/NextChat-Awesome-Plugins) | ||
- 🚀 v2.14.0 Now supports Artifacts & SD | ||
- 🚀 v2.10.1 support Google Gemini Pro model. | ||
- 🚀 v2.9.11 you can use azure endpoint now. | ||
- 🚀 v2.8 now we have a client that runs across all platforms! | ||
|
||
## 主要功能 | ||
|
||
- 在 1 分钟内使用 Vercel **免费一键部署** | ||
- 提供体积极小(~5MB)的跨平台客户端(Linux/Windows/MacOS), [下载地址](https://github.com/Yidadaa/ChatGPT-Next-Web/releases) | ||
- 完整的 Markdown 支持:LaTex 公式、Mermaid 流程图、代码高亮等等 | ||
- 精心设计的 UI,响应式设计,支持深色模式,支持 PWA | ||
- 极快的首屏加载速度(~100kb),支持流式响应 | ||
- 隐私安全,所有数据保存在用户浏览器本地 | ||
- 预制角色功能(面具),方便地创建、分享和调试你的个性化对话 | ||
- 海量的内置 prompt 列表,来自[中文](https://github.com/PlexPt/awesome-chatgpt-prompts-zh)和[英文](https://github.com/f/awesome-chatgpt-prompts) | ||
- 自动压缩上下文聊天记录,在节省 Token 的同时支持超长对话 | ||
- 多国语言支持:English, 简体中文, 繁体中文, 日本語, Español, Italiano, Türkçe, Deutsch, Tiếng Việt, Русский, Čeština | ||
- 拥有自己的域名?好上加好,绑定后即可在任何地方**无障碍**快速访问 | ||
|
||
## 开发计划 | ||
|
||
- [x] 为每个对话设置系统 Prompt [#138](https://github.com/Yidadaa/ChatGPT-Next-Web/issues/138) | ||
- [x] 允许用户自行编辑内置 Prompt 列表 | ||
- [x] 预制角色:使用预制角色快速定制新对话 [#993](https://github.com/Yidadaa/ChatGPT-Next-Web/issues/993) | ||
- [x] 分享为图片,分享到 ShareGPT 链接 [#1741](https://github.com/Yidadaa/ChatGPT-Next-Web/pull/1741) | ||
- [x] 使用 tauri 打包桌面应用 | ||
- [x] 支持自部署的大语言模型:开箱即用 [RWKV-Runner](https://github.com/josStorer/RWKV-Runner) ,服务端部署 [LocalAI 项目](https://github.com/go-skynet/LocalAI) llama / gpt4all / rwkv / vicuna / koala / gpt4all-j / cerebras / falcon / dolly 等等,或者使用 [api-for-open-llm](https://github.com/xusenlinzy/api-for-open-llm) | ||
- [ ] 插件机制,支持联网搜索、计算器、调用其他平台 api [#165](https://github.com/Yidadaa/ChatGPT-Next-Web/issues/165) | ||
|
||
## 最新动态 | ||
|
||
- 🚀 v2.0 已经发布,现在你可以使用面具功能快速创建预制对话了! 了解更多: [ChatGPT 提示词高阶技能:零次、一次和少样本提示](https://github.com/Yidadaa/ChatGPT-Next-Web/issues/138)。 | ||
- 💡 想要更方便地随时随地使用本项目?可以试下这款桌面插件:https://github.com/mushan0x0/AI0x0.com | ||
- 🚀 v2.7 现在可以将会话分享为图片了,也可以分享到 ShareGPT 的在线链接。 | ||
- 🚀 v2.8 发布了横跨 Linux/Windows/MacOS 的体积极小的客户端。 | ||
- 🚀 v2.7 let's share conversations as image, or share to ShareGPT! | ||
- 🚀 v2.0 is released, now you can create prompt templates, turn your ideas into reality! Read this: [ChatGPT Prompt Engineering Tips: Zero, One and Few Shot Prompting](https://www.allabtai.com/prompt-engineering-tips-zero-one-and-few-shot-prompting/). |
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.
🛠️ Refactor suggestion
Fix grammar: Correct verb agreement and sentence structure.
Multiple grammar issues need to be addressed in the "What's New" section.
-- 🚀 v2.15.8 Now supports Realtime Chat [#5672](https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/issues/5672)
-- 🚀 v2.15.4 The Application supports using Tauri fetch LLM API, MORE SECURITY! [#5379](https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/issues/5379)
-- 🚀 v2.15.0 Now supports Plugins! Read this: [NextChat-Awesome-Plugins](https://github.com/ChatGPTNextWeb/NextChat-Awesome-Plugins)
-- 🚀 v2.14.0 Now supports Artifacts & SD
-- 🚀 v2.10.1 support Google Gemini Pro model.
-- 🚀 v2.9.11 you can use azure endpoint now.
-- 🚀 v2.7 let's share conversations as image, or share to ShareGPT!
-- 🚀 v2.0 is released, now you can create prompt templates, turn your ideas into reality! Read this: [ChatGPT Prompt Engineering Tips: Zero, One and Few Shot Prompting](https://www.allabtai.com/prompt-engineering-tips-zero-one-and-few-shot-prompting/).
+- 🚀 v2.15.8 Added support for Realtime Chat [#5672](https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/issues/5672)
+- 🚀 v2.15.4 Added support for Tauri fetch LLM API for enhanced security [#5379](https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/issues/5379)
+- 🚀 v2.15.0 Added Plugin support! Read this: [NextChat-Awesome-Plugins](https://github.com/ChatGPTNextWeb/NextChat-Awesome-Plugins)
+- 🚀 v2.14.0 Added support for Artifacts & SD
+- 🚀 v2.10.1 Added support for Google Gemini Pro model
+- 🚀 v2.9.11 Added support for Azure endpoint
+- 🚀 v2.7 Added ability to share conversations as images or to ShareGPT
+- 🚀 v2.0 Released with prompt template creation capabilities! Read this: [ChatGPT Prompt Engineering Tips: Zero, One and Few Shot Prompting](https://www.allabtai.com/prompt-engineering-tips-zero-one-and-few-shot-prompting/).
Committable suggestion skipped: line range outside the PR's diff.
🧰 Tools
🪛 LanguageTool
[uncategorized] ~124-~124: This verb does not appear to agree with the subject. Consider using a different form.
Context: ... supports Artifacts & SD - 🚀 v2.10.1 support Google Gemini Pro model. - 🚀 v2.9.11 y...
(AI_EN_LECTOR_REPLACEMENT_VERB_AGREEMENT)
[style] ~127-~127: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...lient that runs across all platforms! - 🚀 v2.7 let's share conversations as image...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~128-~128: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...tions as image, or share to ShareGPT! - 🚀 v2.0 is released, now you can create pr...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
🤖 Prompt for AI Agents
In README.md around lines 120 to 128, fix grammar issues by ensuring correct
verb agreement and consistent sentence structure in the "What's New" section.
For example, change "support Google Gemini Pro model" to "supports Google Gemini
Pro model" and capitalize the first letter of each entry for consistency. Also,
rephrase sentences to maintain parallel structure and clarity throughout the
list.
README.md
Outdated
## 🫣 NextChat Support MCP ! | ||
> Before build, please set env ENABLE_MCP=true | ||
|
||
<img src="https://github.com/user-attachments/assets/d8851f40-4e36-4335-b1a4-ec1e11488c7e"/> | ||
|
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.
🛠️ Refactor suggestion
Add alt text for MCP feature image and fix blank line in blockquote.
The MCP feature image lacks alt text, and there's an improper blank line structure in the blockquote.
-## 🫣 NextChat Support MCP !
-> Before build, please set env ENABLE_MCP=true
-
-<img src="https://github.com/user-attachments/assets/d8851f40-4e36-4335-b1a4-ec1e11488c7e"/>
+## 🫣 NextChat Support MCP!
+> Before build, please set env ENABLE_MCP=true
+
+<img src="https://github.com/user-attachments/assets/d8851f40-4e36-4335-b1a4-ec1e11488c7e" alt="MCP (Model Context Protocol) interface screenshot"/>
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
## 🫣 NextChat Support MCP ! | |
> Before build, please set env ENABLE_MCP=true | |
<img src="https://github.com/user-attachments/assets/d8851f40-4e36-4335-b1a4-ec1e11488c7e"/> | |
## 🫣 NextChat Support MCP! | |
> Before build, please set env ENABLE_MCP=true | |
<img src="https://github.com/user-attachments/assets/d8851f40-4e36-4335-b1a4-ec1e11488c7e" alt="MCP (Model Context Protocol) interface screenshot"/> |
🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
62-62: Images should have alternate text (alt text)
null
(MD045, no-alt-text)
🤖 Prompt for AI Agents
In README.md around lines 59 to 63, the image for the MCP feature is missing alt
text, and the blockquote contains an improper blank line. Add a descriptive alt
attribute to the image tag to improve accessibility, and remove the blank line
inside the blockquote to fix the formatting.
Feat/support 302ai provider
Migrate to claude 4
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.
Actionable comments posted: 1
♻️ Duplicate comments (4)
app/client/platforms/anthropic.ts (1)
274-312
: Address the type confusion issue flagged in previous reviews.The
processToolMessage
function still incorrectly types therequestPayload
parameter asRequestPayload
fromopenai.ts
, but it actually operates on anAnthropicChatRequest
. This creates type confusion and potential runtime errors.- ( - requestPayload: RequestPayload, - toolCallMessage: any, - toolCallResult: any[], - ) => { + ( + requestPayload: AnthropicChatRequest, + toolCallMessage: any, + toolCallResult: any[], + ) => {README.md (3)
34-34
: Add alt text for Monica sponsorship image.The Monica sponsorship image is missing alt text, which was flagged in previous reviews.
-[<img src="https://github.com/user-attachments/assets/903482d4-3e87-4134-9af1-f2588fa90659" height="50" width="" >](https://monica.im/?utm=nxcrp) +[<img src="https://github.com/user-attachments/assets/903482d4-3e87-4134-9af1-f2588fa90659" height="50" width="" alt="Monica AI Assistant" >](https://monica.im/?utm=nxcrp)
58-58
: Add alt text for MCP feature image.The MCP feature image is missing alt text, which was flagged in previous reviews.
-<img src="https://github.com/user-attachments/assets/d8851f40-4e36-4335-b1a4-ec1e11488c7e"/> +<img src="https://github.com/user-attachments/assets/d8851f40-4e36-4335-b1a4-ec1e11488c7e" alt="MCP (Model Context Protocol) interface screenshot"/>
476-478
: Add alt text for contributors image.The contributors image is missing alt text, which was flagged in previous reviews.
-<a href="https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/graphs/contributors"> - <img src="https://contrib.rocks/image?repo=ChatGPTNextWeb/ChatGPT-Next-Web" /> -</a> +<a href="https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/graphs/contributors"> + <img src="https://contrib.rocks/image?repo=ChatGPTNextWeb/ChatGPT-Next-Web" alt="Contributors" /> +</a>
🧹 Nitpick comments (9)
app/client/platforms/anthropic.ts (2)
190-192
: Make hardcoded configuration values configurable.The
top_k
parameter is hardcoded to 5, but it should be configurable like other model parameters.- // top_k: modelConfig.top_k, - top_k: 5, + top_k: modelConfig.top_k || 5,
244-249
: Improve error handling for content policy violations.The refusal handling is good, but the error message could be more user-friendly and the function should return consistently.
if (chunkJson?.delta?.stop_reason === "refusal") { - // Return a message to display to the user - const refusalMessage = "\n\n[Assistant refused to respond. Please modify your request and try again.]"; - options.onError?.(new Error("Content policy violation: " + refusalMessage)); - return refusalMessage; + const refusalMessage = "The assistant cannot provide a response to this request. Please modify your request and try again."; + options.onError?.(new Error("Content policy violation")); + return refusalMessage; }README_CN.md (4)
3-5
: Add descriptive alt text for the enterprise icon.The enterprise icon image is missing alt text, which is important for accessibility.
-<a href='#企业版'> - <img src="./docs/images/ent.svg" alt="icon"/> -</a> +<a href='#企业版'> + <img src="./docs/images/ent.svg" alt="企业版图标"/> +</a>
19-21
: Improve the sponsorship section image alt text.The 302.AI sponsorship image has generic alt text that doesn't describe the content.
-<a href='https://302.ai/'> - <img src="https://github.com/user-attachments/assets/d8c0c513-1e18-4d3b-a2a9-ff3696aec0d4" width="100%" alt="icon"/> -</a> +<a href='https://302.ai/'> + <img src="https://github.com/user-attachments/assets/d8c0c513-1e18-4d3b-a2a9-ff3696aec0d4" width="100%" alt="302.AI AI应用平台"/> +</a>
251-251
: Add language specification to code block.The code block is missing language specification, which affects syntax highlighting.
-``` +```bash code1,code2,code3--- `388-388`: **Consider adding measure word for better Chinese grammar.** The Chinese text could benefit from adding a measure word between the number and noun for better readability. ```diff -- [one-api](https://github.com/songquanpeng/one-api): 一站式大模型额度管理平台,支持市面上所有主流大语言模型 +- [one-api](https://github.com/songquanpeng/one-api): 一站式大模型额度管理平台,支持市面上所有主流的大语言模型
README.md (2)
436-442
: Add language specification to code block.The code block for MCP Docker example is missing language specification.
-``` +```shell docker run -d -p 3000:3000 \ -e OPENAI_API_KEY=sk-xxxx \ -e CODE=your-password \ -e ENABLE_MCP=true \ yidadaa/chatgpt-next-web--- `13-13`: **Fix spacing and grammar in description.** The description has spacing and grammar issues that affect readability. ```diff -✨ Light and Fast AI Assistant,with Claude, DeepSeek, GPT4 & Gemini Pro support. +✨ Light and Fast AI Assistant, with Claude, DeepSeek, GPT-4 & Gemini Pro support.
README_JA.md (1)
74-74
: Consider simplifying the Japanese expression.The static analysis tool suggests the expression "ことができます" might be redundant. Consider using a more concise form.
-このプロジェクトをスターまたはウォッチしたり、作者をフォローすることで、新機能の更新通知をすぐに受け取ることができます。 +このプロジェクトをスターまたはウォッチしたり、作者をフォローすることで、新機能の更新通知をすぐに受け取れます。
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
README.md
(10 hunks)README_CN.md
(9 hunks)README_JA.md
(1 hunks)app/client/platforms/anthropic.ts
(1 hunks)
🧰 Additional context used
🪛 markdownlint-cli2 (0.17.2)
README_CN.md
34-34: Bare URL used
(MD034, no-bare-urls)
40-40: Link fragments should be valid
(MD051, link-fragments)
251-251: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
266-266: Blank line inside blockquote
(MD028, no-blanks-blockquote)
README.md
34-34: Images should have alternate text (alt text)
(MD045, no-alt-text)
49-49: Blank line inside blockquote
(MD028, no-blanks-blockquote)
58-58: Images should have alternate text (alt text)
(MD045, no-alt-text)
72-72: Bare URL used
(MD034, no-bare-urls)
436-436: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
456-456: Reference links and images should use a label that is defined
Missing link or image reference definition: "./docs"
(MD052, reference-links-images)
477-477: Images should have alternate text (alt text)
(MD045, no-alt-text)
🪛 LanguageTool
README_CN.md
[uncategorized] ~388-~388: 数词与名词之间一般应存在量词,可能缺少量词。
Context: ...tps://github.com/songquanpeng/one-api): 一站式大模型额度管理平台,支持市面上所有主流大语言模型 ## 开源协议 [MIT...
(wa5)
README.md
[grammar] ~9-~9: Use proper spacing conventions.
Context: ...="center">NextChat English / 简体中文 ✨ Light and Fast AI Assistant,with Claud...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~13-~13: There might be a mistake here.
Context: ... height="55"/> ✨ Light and Fast AI Assistant,with Claude, DeepSeek, GPT4 & Gemini Pro...
(QB_NEW_EN_OTHER)
[grammar] ~13-~13: There might be a mistake here.
Context: ...ast AI Assistant,with Claude, DeepSeek, GPT4 & Gemini Pro support. [![Saas][Saas-im...
(QB_NEW_EN_OTHER)
[grammar] ~13-~13: Use proper spacing conventions.
Context: ...de, DeepSeek, GPT4 & Gemini Pro support. [![Saas][Saas-image]][saas-url] [![Web][Web-image]][web-url] [![Windows]...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~18-~18: Use proper spacing conventions.
Context: ...l] [![MacOS][MacOS-image]][download-url] [![Linux][Linux-image]][download-url] [NextChatAI](https://nextchat.club?utm_so...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~21-~21: Use proper spacing conventions.
Context: ...Next-Web/releases) / Enterprise Edition [saas-url]: https://nextchat.club?utm_source=readme [saas-image]: https://img.shields.io/badge/NextChat-Saas-green?logo=microsoftedge [web-url]: https://app.nextchat.club/ [download-url]: https://github.com/Yidadaa/ChatGPT-Next-Web/releases [Web-image]: https://img.shields.io/badge/Web-PWA-orange?logo=microsoftedge [Windows-image]: https://img.shields.io/badge/-Windows-blue?logo=windows [MacOS-image]: https://img.shields.io/badge/-MacOS-black?logo=apple [Linux-image]: https://img.shields.io/badge/-Linux-333?logo=ubuntu [<img src="https://vercel.com/button" a...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~32-~32: Use proper spacing conventions.
Context: ...name=nextchat&repository-name=NextChat)
## ❤️ Sponsor AI API <a href='https://302....
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~38-~38: Use proper spacing conventions.
Context: ...utm=nxcrp) ## ❤️ Sponsor AI API 302.AI is a pay-as-you...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~44-~44: Use proper spacing conventions.
Context: ... APIs and online applications available. ## 🥳 Cheer for NextChat iOS Version Online...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~46-~46: Use articles correctly.
Context: ...pplications available. ## 🥳 Cheer for NextChat iOS Version Online! > [👉 Click Here t...
(QB_NEW_EN_OTHER_ERROR_IDS_000004)
[grammar] ~46-~46: Use proper spacing conventions.
Context: ...? Cheer for NextChat iOS Version Online! > [👉 Click Here to Install Now](https://ap...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~48-~48: Use proper spacing conventions.
Context: ...Online! > 👉 Click Here to Install Now > [❤️ Source Code Coming Soon](https://gith...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~50-~50: Use proper spacing conventions.
Context: ...43085599) > ❤️ Source Code Coming Soon ## 🫣 NextChat Support MCP ! > Before buil...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~54-~54: There might be a problem here.
Context: ...3b09fa4b9f3) ## 🫣 NextChat Support MCP ! > Before build, please set env ENABLE_MCP=...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~56-~56: There might be a mistake here.
Context: ... ## 🫣 NextChat Support MCP ! > Before build, please set env ENABLE_MCP=true <img s...
(QB_NEW_EN_OTHER)
[grammar] ~56-~56: Place a period at the end of declarative sentences.
Context: ...re build, please set env ENABLE_MCP=true ## Enterprise Edition Meeting Your Company...
(QB_NEW_EN_OTHER_ERROR_IDS_000178)
[grammar] ~60-~60: Use proper spacing conventions.
Context: ...4-ec1e11488c7e"/> ## Enterprise Edition Meeting Your Company's Privatization and...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~62-~62: Use proper spacing conventions.
Context: ...d Customization Deployment Requirements: - Brand Customization: Tailored VI/UI to...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~64-~64: Use proper spacing conventions.
Context: ...y align with your corporate brand image. - Resource Integration: Unified configur...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~65-~65: Use proper spacing conventions.
Context: ...strators, ready for use by team members. - Permission Control: Clearly defined me...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~66-~66: Use proper spacing conventions.
Context: ...olled via a corporate-grade Admin Panel. - Knowledge Integration: Combining your ...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~67-~67: Use proper spacing conventions.
Context: ...c business needs compared to general AI. - Security Auditing: Automatically inter...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~68-~68: Use proper spacing conventions.
Context: ...orporate information security standards. - Private Deployment: Enterprise-level p...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~69-~69: Use proper spacing conventions.
Context: ...ng data security and privacy protection. - Continuous Updates: Ongoing updates an...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~70-~70: Use proper spacing conventions.
Context: ...g consistent innovation and advancement. For enterprise inquiries, please contact...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~72-~72: Avoid interrupting sentences with colons.
Context: ...For enterprise inquiries, please contact: business@nextchat.dev ## Screensho...
(QB_NEW_EN_OTHER_ERROR_IDS_000069)
[grammar] ~72-~72: There might be a mistake here.
Context: ... please contact: business@nextchat.dev ## Screenshots 
[grammar] ~74-~74: Use proper spacing conventions.
Context: ...business@nextchat.dev* ## Screenshots
## Features - **Deploy for free with one-c...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~80-~80: Use proper spacing conventions.
Context: ...re](./docs/images/more.png) ## Features - Deploy for free with one-click on Verc...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~82-~82: Don’t hyphenate words unnecessarily.
Context: ...# Features - Deploy for free with one-click on Vercel in under 1 minute - Co...
(QB_NEW_EN_OTHER_ERROR_IDS_000042)
[grammar] ~82-~82: There might be a mistake here.
Context: ...e with one-click** on Vercel in under 1 minute - Compact client (~5MB) on Linux/Window...
(QB_NEW_EN_OTHER)
[grammar] ~83-~83: There might be a mistake here.
Context: ...act client (~5MB) on Linux/Windows/MacOS, [download it now](https://github.com/Yi...
(QB_NEW_EN_OTHER)
[grammar] ~83-~83: There might be a mistake here.
Context: ...B) on Linux/Windows/MacOS, [download it now](https://github.com/Yidadaa/ChatGPT-Nex...
(QB_NEW_EN_OTHER)
[grammar] ~84-~84: There might be a mistake here.
Context: ...://github.com/josStorer/RWKV-Runner) or LocalAI ...
(QB_NEW_EN_OTHER)
[grammar] ~85-~85: There might be a mistake here.
Context: ...b.com/go-skynet/LocalAI) - Privacy first, all data is stored locally in the brows...
(QB_NEW_EN_OTHER)
[grammar] ~85-~85: There might be a mistake here.
Context: ...irst, all data is stored locally in the browser - Markdown support: LaTex, mermaid, cod...
(QB_NEW_EN_OTHER)
[grammar] ~86-~86: There might be a mistake here.
Context: ...ally in the browser - Markdown support: LaTex, mermaid, code highlight, etc. - Respon...
(QB_NEW_EN_OTHER)
[grammar] ~86-~86: Use proper spacing conventions.
Context: ...rt: LaTex, mermaid, code highlight, etc. - Responsive design, dark mode and PWA - F...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~87-~87: Use an Oxford comma.
Context: ...ghlight, etc. - Responsive design, dark mode and PWA - Fast first screen loading spe...
(QB_NEW_EN_OTHER_ERROR_IDS_000014)
[grammar] ~88-~88: There might be a mistake here.
Context: ...d PWA - Fast first screen loading speed (~100kb), support streaming response - New in...
(QB_NEW_EN_OTHER)
[grammar] ~89-~89: Use an Oxford comma.
Context: ...streaming response - New in v2: create, share and debug your chat tools with prompt t...
(QB_NEW_EN_OTHER_ERROR_IDS_000014)
[grammar] ~89-~89: There might be a mistake here.
Context: ...g your chat tools with prompt templates (mask) - Awesome prompts powered by [awesome-c...
(QB_NEW_EN_OTHER)
[grammar] ~91-~91: There might be a mistake here.
Context: ...ng conversations while also saving your tokens - I18n: English, 简体中文, 繁体中文, 日本語, Franç...
(QB_NEW_EN_OTHER)
[grammar] ~92-~92: Use proper spacing conventions.
Context: ...g Việt, Русский, Čeština, 한국어, Indonesia
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~114-~114: Use proper spacing conventions.
Context: ... [ ] local knowledge base ## What's New - 🚀 v2.15.8 Now supports Realtime Chat [#...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~116-~116: There might be a mistake here.
Context: ...- 🚀 v2.15.8 Now supports Realtime Chat [ChatGPTNextWeb#5672](https://github.com/ChatGPTNextWeb/Chat...
(QB_NEW_EN_OTHER)
[grammar] ~117-~117: There might be a mistake here.
Context: ...ing Tauri fetch LLM API, MORE SECURITY! [ChatGPTNextWeb#5379](https://github.com/ChatGPTNextWeb/Chat...
(QB_NEW_EN_OTHER)
[grammar] ~118-~118: There might be a mistake here.
Context: ...2.15.0 Now supports Plugins! Read this: [NextChat-Awesome-Plugins](https://github.com/ChatGPTNextWeb/Next...
(QB_NEW_EN_OTHER)
[grammar] ~119-~119: There might be a mistake here.
Context: ...) - 🚀 v2.14.0 Now supports Artifacts & SD - 🚀 v2.10.1 support Google Gemini Pro ...
(QB_NEW_EN_OTHER)
[grammar] ~120-~120: There might be a mistake here.
Context: ...ow supports Artifacts & SD - 🚀 v2.10.1 support Google Gemini Pro model. - 🚀 v2.9.11 y...
(QB_NEW_EN_OTHER)
[grammar] ~120-~120: There might be a problem here.
Context: ...v2.10.1 support Google Gemini Pro model. - 🚀 v2.9.11 you can use azure endpoint now. - 🚀 v2...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~121-~121: Use singular and plural nouns appropriately.
Context: ...o model. - 🚀 v2.9.11 you can use azure endpoint now. - 🚀 v2.8 now we have a client tha...
(QB_NEW_EN_OTHER_ERROR_IDS_000012)
[grammar] ~121-~121: Use proper spacing conventions.
Context: ... v2.9.11 you can use azure endpoint now. - 🚀 v2.8 now we have a client that runs a...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~122-~122: There might be a mistake here.
Context: ...11 you can use azure endpoint now. - 🚀 v2.8 now we have a client that runs across a...
(QB_NEW_EN_OTHER)
[grammar] ~122-~122: Use proper spacing conventions.
Context: ...a client that runs across all platforms! - 🚀 v2.7 let's share conversations as ima...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[style] ~123-~123: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...lient that runs across all platforms! - 🚀 v2.7 let's share conversations as image...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[grammar] ~123-~123: Avoid adding unnecessary apostrophes.
Context: ...at runs across all platforms! - 🚀 v2.7 let's share conversations as image, or share ...
(QB_NEW_EN_OTHER_ERROR_IDS_000039)
[grammar] ~123-~123: Use singular and plural nouns appropriately.
Context: ... - 🚀 v2.7 let's share conversations as image, or share to ShareGPT! - 🚀 v2.0 is rele...
(QB_NEW_EN_OTHER_ERROR_IDS_000012)
[grammar] ~123-~123: Use proper spacing conventions.
Context: ...rsations as image, or share to ShareGPT! - 🚀 v2.0 is released, now you can create ...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[style] ~124-~124: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...tions as image, or share to ShareGPT! - 🚀 v2.0 is released, now you can create pr...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[grammar] ~124-~124: There might be a mistake here.
Context: ...share to ShareGPT! - 🚀 v2.0 is released, now you can create prompt templates, tu...
(QB_NEW_EN_OTHER)
[grammar] ~124-~124: There might be a mistake here.
Context: ...sed, now you can create prompt templates, turn your ideas into reality! Read this...
(QB_NEW_EN_OTHER)
[grammar] ~124-~124: Use an Oxford comma.
Context: ...[ChatGPT Prompt Engineering Tips: Zero, One and Few Shot Prompting](https://www.all...
(QB_NEW_EN_OTHER_ERROR_IDS_000014)
[grammar] ~124-~124: There might be a mistake here.
Context: ...ompt Engineering Tips: Zero, One and Few Shot Prompting](https://www.allabtai.com...
(QB_NEW_EN_OTHER)
[grammar] ~124-~124: Use proper spacing conventions.
Context: ...-tips-zero-one-and-few-shot-prompting/). ## Get Started 1. Get [OpenAI API Key](htt...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~149-~149: Use proper spacing conventions.
Context: ...de](./README.md#manually-updating-code). After forking the project, due to the li...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~161-~161: Use articles correctly.
Context: ...an star or watch this project or follow author to get release notifications in time. ...
(QB_NEW_EN_OTHER_ERROR_IDS_000004)
[grammar] ~161-~161: Use proper spacing conventions.
Context: ...or to get release notifications in time. ## Access Password This project provides l...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~175-~175: Use proper spacing conventions.
Context: ...ronment Variables ### CODE
(optional) Access password, separated by comma. ##...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~177-~177: Use proper spacing conventions.
Context: ...l) Access password, separated by comma. ### OPENAI_API_KEY
(required) Your openai api key, join m...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~179-~179: Use proper spacing conventions.
Context: ... comma. ### OPENAI_API_KEY
(required) Your openai api key, join multiple api k...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~181-~181: There might be a mistake here.
Context: ... ### OPENAI_API_KEY
(required) Your openai api key, join multiple api keys with co...
(QB_NEW_EN_OTHER)
[grammar] ~181-~181: Correct comma splices.
Context: ...API_KEY` (required) Your openai api key, join multiple api keys with comma. ###...
(QB_NEW_EN_OTHER_ERROR_IDS_000064)
[grammar] ~181-~181: There might be a problem here.
Context: ...ai api key, join multiple api keys with comma. ### BASE_URL
(optional) > Default: `https://api.ope...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~195-~195: Use proper spacing conventions.
Context: ...nization ID. ### AZURE_URL
(optional) > Example: https://{azure-resource-url}/op...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~197-~197: Use proper spacing conventions.
Context: ...ple: https://{azure-resource-url}/openai Azure deploy url. ### AZURE_API_KEY
(...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~199-~199: Use proper spacing conventions.
Context: ...-resource-url}/openai Azure deploy url. ### AZURE_API_KEY
(optional) Azure Api Key. ### `AZURE_...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~201-~201: Use proper spacing conventions.
Context: ...loy url. ### AZURE_API_KEY
(optional) Azure Api Key. ### AZURE_API_VERSION
...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~203-~203: Capitalize all the letters in an acronym.
Context: ... ### AZURE_API_KEY
(optional) Azure Api Key. ### AZURE_API_VERSION
(optional...
(QB_NEW_EN_OTHER_ERROR_IDS_000052)
[grammar] ~203-~203: Use proper spacing conventions.
Context: ...ZURE_API_KEY(optional) Azure Api Key. ###
AZURE_API_VERSION` (optional) Azure Api Version, find it ...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~205-~205: Use proper spacing conventions.
Context: ...Key. ### AZURE_API_VERSION
(optional) Azure Api Version, find it at [Azure Doc...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~207-~207: Capitalize all the letters in an acronym.
Context: ...# AZURE_API_VERSION
(optional) Azure Api Version, find it at [Azure Documentatio...
(QB_NEW_EN_OTHER_ERROR_IDS_000052)
[grammar] ~207-~207: There might be a mistake here.
Context: ...I_VERSION` (optional) Azure Api Version, find it at [Azure Documentation](https:...
(QB_NEW_EN_OTHER)
[grammar] ~207-~207: Use proper spacing conventions.
Context: ...ices/openai/reference#chat-completions). ### GOOGLE_API_KEY
(optional) Google Gemini Pro Api Key. ...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~209-~209: Use proper spacing conventions.
Context: ...tions). ### GOOGLE_API_KEY
(optional) Google Gemini Pro Api Key. ### `GOOGLE_...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~211-~211: Capitalize all the letters in an acronym.
Context: ..._API_KEY(optional) Google Gemini Pro Api Key. ###
GOOGLE_URL` (optional) Goog...
(QB_NEW_EN_OTHER_ERROR_IDS_000052)
[grammar] ~211-~211: Use proper spacing conventions.
Context: ...(optional) Google Gemini Pro Api Key. ###
GOOGLE_URL` (optional) Google Gemini Pro Api Url. ...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~213-~213: Use proper spacing conventions.
Context: ...ro Api Key. ### GOOGLE_URL
(optional) Google Gemini Pro Api Url. ### `ANTHROP...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~215-~215: There might be a problem here.
Context: ...OGLE_URL(optional) Google Gemini Pro Api Url. ###
ANTHROPIC_API_KEY` (optional) anthropic claude Api Key. ...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~217-~217: Use proper spacing conventions.
Context: ...Url. ### ANTHROPIC_API_KEY
(optional) anthropic claude Api Key. ### `ANTHROPI...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~219-~219: Capitalize all the letters in an acronym.
Context: ...C_API_KEY(optional) anthropic claude Api Key. ###
ANTHROPIC_API_VERSION` (opti...
(QB_NEW_EN_OTHER_ERROR_IDS_000052)
[grammar] ~219-~219: Use proper spacing conventions.
Context: ...Y(optional) anthropic claude Api Key. ###
ANTHROPIC_API_VERSION` (optional) anthropic claude Api versio...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~221-~221: Use proper spacing conventions.
Context: ... ### ANTHROPIC_API_VERSION
(optional) anthropic claude Api version. ### `ANTH...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~223-~223: Capitalize all the letters in an acronym.
Context: ...I_VERSION(optional) anthropic claude Api version. ###
ANTHROPIC_URL` (optional...
(QB_NEW_EN_OTHER_ERROR_IDS_000052)
[grammar] ~223-~223: Use proper spacing conventions.
Context: ...optional) anthropic claude Api version. ### ANTHROPIC_URL
(optional) anthropic claude Api Url. ...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~225-~225: Use proper spacing conventions.
Context: ...version. ### ANTHROPIC_URL
(optional) anthropic claude Api Url. ### `BAIDU_AP...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~227-~227: There might be a problem here.
Context: ...ROPIC_URL(optional) anthropic claude Api Url. ###
BAIDU_API_KEY(optional) Baidu Api Key. ###
BAIDU_...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~229-~229: Use proper spacing conventions.
Context: ...Api Url. ### BAIDU_API_KEY
(optional) Baidu Api Key. ### BAIDU_SECRET_KEY
(...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~231-~231: Capitalize all the letters in an acronym.
Context: ... ### BAIDU_API_KEY
(optional) Baidu Api Key. ### BAIDU_SECRET_KEY
(optional)...
(QB_NEW_EN_OTHER_ERROR_IDS_000052)
[grammar] ~231-~231: Use proper spacing conventions.
Context: ...AIDU_API_KEY(optional) Baidu Api Key. ###
BAIDU_SECRET_KEY(optional) Baidu Secret Key. ###
BAI...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~233-~233: Use proper spacing conventions.
Context: ... Key. ### BAIDU_SECRET_KEY
(optional) Baidu Secret Key. ### BAIDU_URL
(opti...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~235-~235: Use proper spacing conventions.
Context: ...ECRET_KEY(optional) Baidu Secret Key. ###
BAIDU_URL(optional) Baidu Api Url. ###
BYTEDA...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~237-~237: Use proper spacing conventions.
Context: ... Secret Key. ### BAIDU_URL
(optional) Baidu Api Url. ### BYTEDANCE_API_KEY
...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~239-~239: There might be a problem here.
Context: ...Key. ### BAIDU_URL
(optional) Baidu Api Url. ### BYTEDANCE_API_KEY
(optional) ByteDance Api Key. ### `BY...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~241-~241: Use proper spacing conventions.
Context: ...Url. ### BYTEDANCE_API_KEY
(optional) ByteDance Api Key. ### BYTEDANCE_URL
...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~243-~243: Capitalize all the letters in an acronym.
Context: ...YTEDANCE_API_KEY(optional) ByteDance Api Key. ###
BYTEDANCE_URL` (optional) B...
(QB_NEW_EN_OTHER_ERROR_IDS_000052)
[grammar] ~243-~243: Use proper spacing conventions.
Context: ..._API_KEY(optional) ByteDance Api Key. ###
BYTEDANCE_URL(optional) ByteDance Api Url. ###
AL...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~245-~245: Use proper spacing conventions.
Context: ...Api Key. ### BYTEDANCE_URL
(optional) ByteDance Api Url. ### `ALIBABA_API_KEY...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~247-~247: There might be a problem here.
Context: ...# BYTEDANCE_URL
(optional) ByteDance Api Url. ### ALIBABA_API_KEY
(optional) Alibaba Cloud Api Key. ###...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~249-~249: Use proper spacing conventions.
Context: ...i Url. ### ALIBABA_API_KEY
(optional) Alibaba Cloud Api Key. ### `ALIBABA_URL...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~251-~251: Capitalize all the letters in an acronym.
Context: ...BABA_API_KEY(optional) Alibaba Cloud Api Key. ###
ALIBABA_URL` (optional) Ali...
(QB_NEW_EN_OTHER_ERROR_IDS_000052)
[grammar] ~251-~251: Use proper spacing conventions.
Context: ..._KEY(optional) Alibaba Cloud Api Key. ###
ALIBABA_URL` (optional) Alibaba Cloud Api Url. ###...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~253-~253: Use proper spacing conventions.
Context: ...d Api Key. ### ALIBABA_URL
(optional) Alibaba Cloud Api Url. ### `IFLYTEK_URL...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~255-~255: There might be a problem here.
Context: ...ALIBABA_URL
(optional) Alibaba Cloud Api Url. ### IFLYTEK_URL
(Optional) iflytek Api Url. ### `IFLY...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~257-~257: There might be a problem here.
Context: ...d Api Url. ### IFLYTEK_URL
(Optional) iflytek Api Url. ### IFLYTEK_API_KEY
(Optional) iflytek Api Key. ### `IFLY...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~261-~261: There might be a problem here.
Context: ...i Url. ### IFLYTEK_API_KEY
(Optional) iflytek Api Key. ### IFLYTEK_API_SECRET
(Optiona...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~263-~263: Use proper spacing conventions.
Context: ...EK_API_KEY(Optional) iflytek Api Key. ###
IFLYTEK_API_SECRET(Optional) iflytek Api Secret. ###
C...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~265-~265: There might be a problem here.
Context: ...ey. ### IFLYTEK_API_SECRET
(Optional) iflytek Api Secret. ### CHATGLM_API_KEY
(optiona...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~267-~267: Use proper spacing conventions.
Context: ..._SECRET(Optional) iflytek Api Secret. ###
CHATGLM_API_KEY(optional) ChatGLM Api Key. ###
CHAT...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~269-~269: Use proper spacing conventions.
Context: ...ecret. ### CHATGLM_API_KEY
(optional) ChatGLM Api Key. ### CHATGLM_URL
(opt...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~271-~271: Capitalize all the letters in an acronym.
Context: ...# CHATGLM_API_KEY
(optional) ChatGLM Api Key. ### CHATGLM_URL
(optional) Cha...
(QB_NEW_EN_OTHER_ERROR_IDS_000052)
[grammar] ~271-~271: Use proper spacing conventions.
Context: ...LM_API_KEY(optional) ChatGLM Api Key. ###
CHATGLM_URL(optional) ChatGLM Api Url. ###
DEEP...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~273-~273: Use proper spacing conventions.
Context: ...M Api Key. ### CHATGLM_URL
(optional) ChatGLM Api Url. ### DEEPSEEK_API_KEY
...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~275-~275: There might be a problem here.
Context: ... ### CHATGLM_URL
(optional) ChatGLM Api Url. ### DEEPSEEK_API_KEY
(optional) DeepSeek Api Key. ### `DEE...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~277-~277: Use proper spacing conventions.
Context: ... Url. ### DEEPSEEK_API_KEY
(optional) DeepSeek Api Key. ### DEEPSEEK_URL
(o...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~279-~279: Capitalize all the letters in an acronym.
Context: ...DEEPSEEK_API_KEY
(optional) DeepSeek Api Key. ### DEEPSEEK_URL
(optional) De...
(QB_NEW_EN_OTHER_ERROR_IDS_000052)
[grammar] ~279-~279: Use proper spacing conventions.
Context: ...K_API_KEY(optional) DeepSeek Api Key. ###
DEEPSEEK_URL(optional) DeepSeek Api Url. ###
HID...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~281-~281: Use proper spacing conventions.
Context: ... Api Key. ### DEEPSEEK_URL
(optional) DeepSeek Api Url. ### `HIDE_USER_API_KE...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~283-~283: There might be a problem here.
Context: ...### DEEPSEEK_URL
(optional) DeepSeek Api Url. ### HIDE_USER_API_KEY
(optional) > Default: Empty If you do...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~297-~297: Use proper spacing conventions.
Context: .... ### ENABLE_BALANCE_QUERY
(optional) > Default: Empty If you do want users to ...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~299-~299: Use proper spacing conventions.
Context: ...ANCE_QUERY` (optional) > Default: Empty If you do want users to query balance, s...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~301-~301: Use proper spacing conventions.
Context: ...s to query balance, set this value to 1. ### DISABLE_FAST_LINK
(optional) > Default: Empty If you wa...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~303-~303: Use proper spacing conventions.
Context: ...o 1. ### DISABLE_FAST_LINK
(optional) > Default: Empty If you want to disable p...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~305-~305: Use proper spacing conventions.
Context: ..._FAST_LINK` (optional) > Default: Empty If you want to disable parse settings fr...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~307-~307: Use proper spacing conventions.
Context: ... parse settings from url, set this to 1. ### CUSTOM_MODELS
(optional) > Default: Empty > Example:...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~309-~309: Use proper spacing conventions.
Context: ...is to 1. ### CUSTOM_MODELS
(optional) > Default: Empty > Example: `+llama,+claud...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~312-~312: There might be a mistake here.
Context: ...t-4-1106-preview=gpt-4-turbomeans add
llama, claude-2to model list, and remove
gp...
(QB_NEW_EN_OTHER)
[grammar] ~312-~312: Use articles correctly.
Context: ...4-turbomeans add
llama, claude-2to model list, and remove
gpt-3.5-turbo` from l...
(QB_NEW_EN_OTHER_ERROR_IDS_000004)
[grammar] ~312-~312: There might be a mistake here.
Context: ...ns add llama, claude-2
to model list, and remove gpt-3.5-turbo
from list, and d...
(QB_NEW_EN_OTHER)
[grammar] ~312-~312: Use articles correctly.
Context: ...l list, and remove gpt-3.5-turbo
from list, and display gpt-4-1106-preview
as `gp...
(QB_NEW_EN_OTHER_ERROR_IDS_000004)
[grammar] ~312-~312: Use proper spacing conventions.
Context: ...y gpt-4-1106-preview
as gpt-4-turbo
. To control custom models, use +
to add...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~314-~314: There might be a mistake here.
Context: ...o add a custom model, use -
to hide a model, use name=displayName
to customize mod...
(QB_NEW_EN_OTHER)
[grammar] ~314-~314: Use articles correctly.
Context: ...el, use name=displayName
to customize model name, separated by comma. User -all
...
(QB_NEW_EN_OTHER_ERROR_IDS_000004)
[grammar] ~314-~314: There might be a problem here.
Context: ...to customize model name, separated by comma. User
-allto disable all default models,
...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~316-~316: There might be a mistake here.
Context: ...ser -all
to disable all default models, +all
to enable all default models. F...
(QB_NEW_EN_OTHER)
[grammar] ~316-~316: Use proper spacing conventions.
Context: ...ls, +all
to enable all default models. For Azure: use `modelName@Azure=deployme...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~318-~318: Avoid interrupting sentences with colons.
Context: ...to enable all default models. For Azure: use modelName@Azure=deploymentName
to...
(QB_NEW_EN_OTHER_ERROR_IDS_000069)
[grammar] ~318-~318: Use articles correctly.
Context: ...Name@Azure=deploymentNameto customize model name and deployment name. > Example:
...
(QB_NEW_EN_OTHER_ERROR_IDS_000004)
[grammar] ~318-~318: Use proper spacing conventions.
Context: ...ustomize model name and deployment name. > Example: +gpt-3.5-turbo@Azure=gpt35
wi...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~320-~320: Use articles correctly.
Context: ...t35will show option
gpt35(Azure)` in model list. > If you only can use Azure model...
(QB_NEW_EN_OTHER_ERROR_IDS_000004)
[grammar] ~320-~320: Use proper spacing conventions.
Context: ...how option gpt35(Azure)
in model list. > If you only can use Azure model, `-all...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~321-~321: There might be a mistake here.
Context: ...tion gpt35(Azure)
in model list. > If you only can use Azure model, `-all,+gpt-3....
(QB_NEW_EN_OTHER)
[grammar] ~321-~321: There might be a problem here.
Context: ...35(Azure)in model list. > If you only can use Azure model,
-all,+gpt-3.5-turbo@Azure...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~321-~321: There might be a mistake here.
Context: ...odel, -all,+gpt-3.5-turbo@Azure=gpt35
will gpt35(Azure)
the only option in model...
(QB_NEW_EN_OTHER)
[grammar] ~321-~321: Use articles correctly.
Context: ... will gpt35(Azure)
the only option in model list. For ByteDance: use `modelName@by...
(QB_NEW_EN_OTHER_ERROR_IDS_000004)
[grammar] ~321-~321: Use proper spacing conventions.
Context: ...5(Azure)the only option in model list. For ByteDance: use
modelName@bytedance=...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~323-~323: Use proper spacing conventions.
Context: ...ustomize model name and deployment name. > Example: `+Doubao-lite-4k@bytedance=ep-x...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~325-~325: Use articles correctly.
Context: ...w option Doubao-lite-4k(ByteDance)
in model list. ### DEFAULT_MODEL
(optional) ...
(QB_NEW_EN_OTHER_ERROR_IDS_000004)
[grammar] ~325-~325: There might be a problem here.
Context: ...oubao-lite-4k(ByteDance)in model list. ###
DEFAULT_MODEL(optional) Change default model ###
VI...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~327-~327: There might be a mistake here.
Context: ...del list. ### DEFAULT_MODEL
(optional) Change default model ### `VISION_MODELS...
(QB_NEW_EN_OTHER)
[grammar] ~329-~329: There might be a problem here.
Context: ..._MODEL(optional) Change default model ###
VISION_MODELS` (optional) > Default: Empty > Example: ...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~331-~331: Use proper spacing conventions.
Context: ...lt model ### VISION_MODELS
(optional) > Default: Empty > Example: `gpt-4-vision,...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~334-~334: There might be a problem here.
Context: ... detect models containing keywords like "vision", "claude-3", "gemini-1.5", etc). Add additional models to have vi...
(QB_NEW_EN_MERGED_MATCH)
[style] ~334-~334: In American English, abbreviations like “etc.” require a period.
Context: ...ike "vision", "claude-3", "gemini-1.5", etc). Add additional models to have vision...
(ETC_PERIOD)
[grammar] ~334-~334: Use proper spacing conventions.
Context: ...vision", "claude-3", "gemini-1.5", etc). Add additional models to have vision cap...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~336-~336: There might be a mistake here.
Context: ...ional models to have vision capabilities, beyond the default pattern matching. Mu...
(QB_NEW_EN_OTHER)
[grammar] ~336-~336: Use proper spacing conventions.
Context: ...le models should be separated by commas. ### WHITE_WEBDAV_ENDPOINTS
(optional) You can use this option if ...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~338-~338: Use proper spacing conventions.
Context: ... ### WHITE_WEBDAV_ENDPOINTS
(optional) You can use this option if you want to i...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~340-~340: There might be a mistake here.
Context: ...n if you want to increase the number of webdav service addresses you are allowed to ac...
(QB_NEW_EN_OTHER)
[grammar] ~340-~340: There might be a mistake here.
Context: ...wed to access, as required by the format: - Each address must be a complete endpoint...
(QB_NEW_EN_OTHER)
[grammar] ~342-~342: Place a period at the end of declarative sentences.
Context: ...Each address must be a complete endpoint > https://xxxx/yyy
- Multiple addresses are connected by ', '...
(QB_NEW_EN_OTHER_ERROR_IDS_000178)
[grammar] ~344-~344: There might be a problem here.
Context: ...Multiple addresses are connected by ', ' ### DEFAULT_INPUT_TEMPLATE
(optional) Customize the default templa...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~346-~346: Use proper spacing conventions.
Context: ... ### DEFAULT_INPUT_TEMPLATE
(optional) Customize the default template used to i...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~348-~348: Use proper spacing conventions.
Context: ...ocessing configuration item in Settings. ### STABILITY_API_KEY
(optional) Stability API key. ### `ST...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~350-~350: Use proper spacing conventions.
Context: ...ngs. ### STABILITY_API_KEY
(optional) Stability API key. ### STABILITY_URL
...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~352-~352: Use proper spacing conventions.
Context: ..._API_KEY(optional) Stability API key. ###
STABILITY_URL` (optional) Customize Stability API url...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~354-~354: Use proper spacing conventions.
Context: ...API key. ### STABILITY_URL
(optional) Customize Stability API url. ### `ENABL...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~356-~356: Use articles correctly.
Context: ...# STABILITY_URL
(optional) Customize Stability API url. ### ENABLE_MCP
(optional) ...
(QB_NEW_EN_OTHER_ERROR_IDS_000004)
[grammar] ~356-~356: Use proper spacing conventions.
Context: ...(optional) Customize Stability API url. ### ENABLE_MCP
(optional) Enable MCP(Model Context Pr...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~358-~358: Use proper spacing conventions.
Context: ...ty API url. ### ENABLE_MCP
(optional) Enable MCP(Model Context Protocol)Featur...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~360-~360: There might be a mistake here.
Context: ...l. ### ENABLE_MCP
(optional) Enable MCP(Model Context Protocol)Feature ### `SILICONF...
(QB_NEW_EN_OTHER)
[grammar] ~360-~360: There might be a problem here.
Context: ...P(optional) Enable MCP(Model Context Protocol)Feature ###
SILICONFLOW_API_KEY(optional) SiliconFlow API Key. ###
S...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~362-~362: Use proper spacing conventions.
Context: ...re ### SILICONFLOW_API_KEY
(optional) SiliconFlow API Key. ### `SILICONFLOW_U...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~364-~364: Use proper spacing conventions.
Context: ...PI_KEY(optional) SiliconFlow API Key. ###
SILICONFLOW_URL(optional) SiliconFlow API URL. ###
...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~366-~366: Use proper spacing conventions.
Context: ...I Key. ### SILICONFLOW_URL
(optional) SiliconFlow API URL. ### `AI302_API_KEY...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~368-~368: Use proper spacing conventions.
Context: ...OW_URL(optional) SiliconFlow API URL. ###
AI302_API_KEY(optional) 302.AI API Key. ###
AI302...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~370-~370: There might be a problem here.
Context: ...API URL. ### AI302_API_KEY
(optional) 302.AI API Key. ### AI302_URL
(optional) 3...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~372-~372: Use proper spacing conventions.
Context: ...302_API_KEY(optional) 302.AI API Key. ###
AI302_URL` (optional) 302.AI API URL. ## Require...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~374-~374: There might be a problem here.
Context: ....AI API Key. ### AI302_URL
(optional) 302.AI API URL. ## Requirements NodeJS >= 18...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~376-~376: Use proper spacing conventions.
Context: ... AI302_URL
(optional) 302.AI API URL. ## Requirements NodeJS >= 18, Docker >= 20...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~418-~418: Use proper spacing conventions.
Context: ...` You can start service behind a proxy: shell docker run -d -p 3000:3000 \ -e OPENAI_API_KEY=sk-xxxx \ -e CODE=your-password \ -e PROXY_URL=http://localhost:7890 \ yidadaa/chatgpt-next-web
If your proxy needs password, use: ```s...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~444-~444: Use proper spacing conventions.
Context: ... yidadaa/chatgpt-next-web ### Shell
shell bash <(curl -s https://raw.github.com/Yidadaa/ChatGPT-Next-Web/main/scripts/setup.sh) ``` ## Synchronizing Chat Records (UpStash) | ...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~450-~450: Use proper spacing conventions.
Context: ... ## Synchronizing Chat Records (UpStash) | [简体中文](./docs/synchronise-chat-logs-cn...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~452-~452: Use proper spacing conventions.
Context: ...docs/synchronise-chat-logs-ja.md) | 한국어 ## Documentation > Please go to the [docs]...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~454-~454: Use proper spacing conventions.
Context: ...onise-chat-logs-ko.md) ## Documentation > Please go to the [docs][./docs] director...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~456-~456: Use proper spacing conventions.
Context: ...ory for more documentation instructions. - [Deploy with cloudflare (Deprecated)](./d...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~459-~459: There might be a problem here.
Context: ...ted)](./docs/cloudflare-pages-en.md) - Frequent Ask Questions - [How to ...
(QB_NEW_EN_MERGED_MATCH)
[grammar] ~462-~462: Use proper spacing conventions.
Context: ...n.md) - User Manual (Only Chinese, WIP) ## Translation If you want to add a new tr...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
[grammar] ~474-~474: Use proper spacing conventions.
Context: ...aa) ## Special Thanks ### Contributors ## LICENSE [MIT](https://opensource.org/li...
(QB_NEW_EN_OTHER_ERROR_IDS_000007)
README_JA.md
[uncategorized] ~74-~74: 「ことができる」という表現は冗長な可能性があります。
Context: ...またはウォッチしたり、作者をフォローすることで、新機能の更新通知をすぐに受け取ることができます。 ## ページアクセスパスワードを設定する > パスワードを設定すると...
(DOUSI_KOTOGADEKIRU)
🔇 Additional comments (1)
README_JA.md (1)
1-323
: Excellent work on the Japanese localization.The Japanese README is well-structured and provides comprehensive documentation. The translation quality is good and maintains consistency with the other README files. The technical terminology is appropriately handled, and the formatting follows markdown best practices.
// @ts-ignore | ||
runTools[index]["function"]["arguments"] += | ||
chunkJson?.delta?.partial_json; |
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.
🛠️ Refactor suggestion
Eliminate TypeScript ignore comments with proper typing.
The @ts-ignore
comment indicates a typing issue that should be resolved properly rather than suppressed.
- // @ts-ignore
- runTools[index]["function"]["arguments"] +=
- chunkJson?.delta?.partial_json;
+ if (runTools[index]?.function) {
+ runTools[index].function.arguments +=
+ chunkJson?.delta?.partial_json || "";
+ }
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
// @ts-ignore | |
runTools[index]["function"]["arguments"] += | |
chunkJson?.delta?.partial_json; | |
if (runTools[index]?.function) { | |
runTools[index].function.arguments += | |
chunkJson?.delta?.partial_json || ""; | |
} |
🤖 Prompt for AI Agents
In app/client/platforms/anthropic.ts around lines 268 to 270, the use of
@ts-ignore suppresses a TypeScript typing error when appending to
runTools[index]["function"]["arguments"]. To fix this, define or refine the
TypeScript types for runTools and its nested properties so that the "arguments"
field is correctly typed as a string or a type that supports concatenation.
Remove the @ts-ignore comment after ensuring the types align properly with the
operation being performed.
…lity for multimodal Claude 4 and Gemini 2.5 series.
fix: Update the regular expressions to support image upload functionality for multimodal Claude 4 and Gemini 2.5 series.
添加免费的Gemini 2.5 Pro进行使用
添加gemini-2.5-pro,可以免费使用Google Gemini
Add gemini-2.5-pro tag, you can use free gemini-2.5-pro
…onshot.ai/v1/models
Docs: Add & Update korean docs
chore: Use Vite instead of Create React App
feat: Update moonshot models and fix for typo
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.
Actionable comments posted: 1
♻️ Duplicate comments (2)
app/components/artifacts.tsx (1)
81-87
: Fix bug: Modified HTML is not being usedThe code creates a modified version with the script injected but doesn't use it. The original
props.code
is still being used.const srcDoc = useMemo(() => { const script = `<script>window.addEventListener("DOMContentLoaded", () => new ResizeObserver((entries) => parent.postMessage({id: '${frameId}', height: entries[0].target.clientHeight}, '*')).observe(document.body))</script>`; if (props.code.includes("<!DOCTYPE html>")) { - props.code.replace("<!DOCTYPE html>", "<!DOCTYPE html>" + script); + return props.code.replace("<!DOCTYPE html>", "<!DOCTYPE html>" + script); } return script + props.code; }, [props.code, frameId]);app/components/markdown.tsx (1)
148-171
: Potential XSS: un-sanitised HTML preview
<HTMLPreview code={htmlCode} />
receiveshtmlCode
taken straight from the markdown without sanitisation. If an attacker pastes arbitrary<script>
into ahtml
block it will execute in the preview iframe / sandbox (depending on howHTMLPreview
is implemented). At minimum run the string throughDOMPurify.sanitize
(or similar) before rendering.
🧹 Nitpick comments (2)
README_KO.md (2)
172-178
: Specify a language for fenced code blocks (MD040)Markdown-lint flags these blocks because the opening fences lack a language hint.
Add the appropriate language identifier to silence the warning and enable syntax highlighting.-``` +```text code1,code2,code3-
+
env
OPENAI_API_KEY=<여기에 API 키 입력>OpenAI 서비스를 사용할 수 없는 경우 아래 BASE_URL 사용
BASE_URL=https://chatgpt1.nextweb.fun/api/proxy
-``` +```shell docker run -d -p 3000:3000 \ -e OPENAI_API_KEY=sk-xxxx \ -e CODE=your-password \ -e ENABLE_MCP=true \ yidadaa/chatgpt-next-web
Also applies to: 392-399, 440-448
50-53
: Remove blank line inside blockquote (MD028)A stray blank line breaks the blockquote formatting right after the iOS-app link.
> 👉 [지금 설치하기](https://apps.apple.com/us/app/nextchat-ai/id6743085599) -> > ❤️ [소스 코드 곧 공개 예정](https://github.com/ChatGPTNextWeb/NextChat-iOS)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (3)
README_KO.md
(1 hunks)app/components/artifacts.tsx
(1 hunks)app/components/markdown.tsx
(6 hunks)
🪛 LanguageTool
README_KO.md
[uncategorized] ~17-~17: Ce signe typographique semble être doublé.
Context: ...Pro 지원 [![Saas][Saas-image]][saas-url] [![Web][Web-image]][web-url] [![Windows][Windows-image]][do...
(DOUBLE_TYPOS)
[uncategorized] ~18-~18: Ce signe typographique semble être doublé.
Context: ...[saas-url] [![Web][Web-image]][web-url] [![Windows][Windows-image]][download-url] [![MacOS][MacOS-image]][d...
(DOUBLE_TYPOS)
[uncategorized] ~19-~19: Ce signe typographique semble être doublé.
Context: ...[Windows][Windows-image]][download-url] [![MacOS][MacOS-image]][download-url] [![Linux][Linux-image]][d...
(DOUBLE_TYPOS)
[uncategorized] ~48-~48: Le point d’exclamation est précédé d’une espace fine insécable.
Context: ...인 애플리케이션을 제공합니다. ## 🥳 NextChat iOS 버전 출시! > 👉 [지금 설치하기](https://apps.apple.com/...
(FRENCH_WHITESPACE)
[typographical] ~50-~50: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...제공합니다. ## 🥳 NextChat iOS 버전 출시! > 👉 [지금 설치하기](https://apps.apple.com/us/app/n...
(UNPAIRED_BRACKETS)
[typographical] ~52-~52: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: .../us/app/nextchat-ai/id6743085599) > ❤️ [소스 코드 곧 공개 예정](https://github.com/ChatGP...
(UNPAIRED_BRACKETS)
[uncategorized] ~56-~56: Le point d’exclamation est précédé d’une espace fine insécable.
Context: ...8310-e3b09fa4b9f3) ## 🫣 NextChat, MCP 지원! > 빌드 전 환경 변수(env) ENABLE_MCP=true
설정...
(FRENCH_WHITESPACE)
[uncategorized] ~64-~64: Les deux-points sont précédés d’une espace insécable.
Context: ... 버전 회사 내부 시스템에 맞춘 프라이빗 배포 및 맞춤형 커스터마이징 지원: - 브랜드 커스터마이징: 기업 이미지에 맞는 UI/UX 테마 ...
(FRENCH_WHITESPACE)
[uncategorized] ~66-~66: Les deux-points sont précédés d’une espace insécable.
Context: ...프라이빗 배포 및 맞춤형 커스터마이징 지원: - 브랜드 커스터마이징: 기업 이미지에 맞는 UI/UX 테마 적용 - 리소스 통합 관리:...
(FRENCH_WHITESPACE)
[uncategorized] ~67-~67: Les deux-points sont précédés d’une espace insécable.
Context: ...**: 기업 이미지에 맞는 UI/UX 테마 적용 - 리소스 통합 관리: 다양한 AI 모델을 통합하여 팀원이 손쉽게 사용 가능 - **권한 제어...
(FRENCH_WHITESPACE)
[uncategorized] ~68-~68: Les deux-points sont précédés d’une espace insécable.
Context: ... 다양한 AI 모델을 통합하여 팀원이 손쉽게 사용 가능 - 권한 제어: 관리자 패널을 통한 멤버·리소스·지식 베이스 권한 설정 - **지식 통...
(FRENCH_WHITESPACE)
[uncategorized] ~69-~69: Les deux-points sont précédés d’une espace insécable.
Context: ...관리자 패널을 통한 멤버·리소스·지식 베이스 권한 설정 - 지식 통합: 사내 문서 및 데이터와 AI를 결합한 맞춤형 답변 제공 - **보안 감...
(FRENCH_WHITESPACE)
[uncategorized] ~70-~70: Les deux-points sont précédés d’une espace insécable.
Context: ...사내 문서 및 데이터와 AI를 결합한 맞춤형 답변 제공 - 보안 감사: 민감한 질문 차단 및 모든 기록 추적 가능 - *프라이빗 배포 지원...
(FRENCH_WHITESPACE)
[uncategorized] ~71-~71: Les deux-points sont précédés d’une espace insécable.
Context: ...: 민감한 질문 차단 및 모든 기록 추적 가능 - 프라이빗 배포 지원: 주요 클라우드 서비스에 맞춘 배포 옵션 - 지속적 업데이트: 멀...
(FRENCH_WHITESPACE)
[uncategorized] ~72-~72: Les deux-points sont précédés d’une espace insécable.
Context: ...지원**: 주요 클라우드 서비스에 맞춘 배포 옵션 - 지속적 업데이트: 멀티모달 등 최신 AI 기능 지속 반영 엔터프라이즈 문의: **bus...
(FRENCH_WHITESPACE)
[uncategorized] ~74-~74: Les deux-points sont précédés d’une espace insécable.
Context: ...적 업데이트**: 멀티모달 등 최신 AI 기능 지속 반영 엔터프라이즈 문의: business@nextchat.dev ## 🖼️ 스크린샷 ...
(FRENCH_WHITESPACE)
[typographical] ~84-~84: Une espace est nécessaire.
Context: ...소개 - Vercel에서 원클릭 무료 배포 (1분 내 완성) - 모든 OS(Linux/Windows/MacOS)에서 사용 가능한 클라이언트 (~5M...
(PARENTHESES)
[typographical] ~84-~84: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...ux/Windows/MacOS)에서 사용 가능한 클라이언트 (~5MB) [지금 다운 받기](https://github.com/Yidadaa/Cha...
(UNPAIRED_BRACKETS)
[uncategorized] ~86-~86: Les deux-points sont précédés d’une espace insécable.
Context: ...-skynet/LocalAI)와 함께 사용하는 것을 추천 - 개인 정보 보호: 모든 대화 기록은 브라우저에만 저장 - Markdown 지원: LaTe...
(FRENCH_WHITESPACE)
[uncategorized] ~87-~87: Les deux-points sont précédés d’une espace insécable.
Context: ...인 정보 보호: 모든 대화 기록은 브라우저에만 저장 - Markdown 지원: LaTex, Mermaid, 코드 하이라이팅 등 - 반응형 디자인, 다...
(FRENCH_WHITESPACE)
[uncategorized] ~89-~89: Une espace doit être ajoutée entre ces deux mots ou intégrez ce nouveau mot à votre dictionnaire personnel.
Context: ... 반응형 디자인, 다크 모드, PWA 지원 - 빠른 초기 로딩 속도 (~100kb), 스트리밍 응답 - 프롬프트 템플릿 생성/공유/디버깅 지원 (v2) ...
(MOTS_COLLES3)
[uncategorized] ~91-~91: Les deux-points sont précédés d’une espace insécable.
Context: ... 스트리밍 응답 - 프롬프트 템플릿 생성/공유/디버깅 지원 (v2) - v2: 프롬프트 템플릿 기반 도구 생성, 공유, 디버깅 가능 - 고급 프롬프트...
(FRENCH_WHITESPACE)
[uncategorized] ~92-~92: Le trait d’union doit être supprimé.
Context: ... 템플릿 기반 도구 생성, 공유, 디버깅 가능 - 고급 프롬프트 내장 [awesome-chatgpt-prompts-zh](https://github.com/PlexPt/a...
(MOT_TRAIT_MOT)
[typographical] ~92-~92: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: .../PlexPt/awesome-chatgpt-prompts-zh) and [awesome-chatgpt-prompts](https://github....
(UNPAIRED_BRACKETS)
[uncategorized] ~92-~92: Le trait d’union doit être supprimé.
Context: ...PlexPt/awesome-chatgpt-prompts-zh) and [awesome-chatgpt-prompts](https://github.com/f/awesome-c...
(MOT_TRAIT_MOT)
[uncategorized] ~94-~94: Les deux-points sont précédés d’une espace insécable.
Context: ...t-prompts) - 긴 대화 내용 자동 압축 저장으로 토큰 절약 - I18n: English, 简体中文, 繁体中文, 日本語, Français, Esp...
(FRENCH_WHITESPACE)
[uncategorized] ~104-~104: Les deux-points sont précédés d’une espace insécable.
Context: ...over.png) ## 개발 로드맵 - [x] 시스템 프롬프트: 사용자가 정의한 프롬프트를 시스템 프롬프트로 고정하기 [ChatGPTNextWeb#138](ht...
(FRENCH_WHITESPACE)
[typographical] ~104-~104: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...시스템 프롬프트: 사용자가 정의한 프롬프트를 시스템 프롬프트로 고정하기 [ChatGPTNextWeb#138](https://github.com/Yidadaa/ChatGPT...
(UNPAIRED_BRACKETS)
[uncategorized] ~105-~105: Les deux-points sont précédés d’une espace insécable.
Context: .../ChatGPT-Next-Web/issues/138) - [x] 사용자 프롬프트: 사용자 정의 프롬프트를 편집 및 저장하여 리스트로 관리 가능 - [x]...
(FRENCH_WHITESPACE)
[uncategorized] ~106-~106: Les deux-points sont précédés d’une espace insécable.
Context: ...의 프롬프트를 편집 및 저장하여 리스트로 관리 가능 - [x] 프롬프트 템플릿: 사전 정의된 인컨텍스트 프롬프트로 새 채팅 생성 [ChatGPTNextWeb#993](https...
(FRENCH_WHITESPACE)
[typographical] ~106-~106: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...x] 프롬프트 템플릿: 사전 정의된 인컨텍스트 프롬프트로 새 채팅 생성 [ChatGPTNextWeb#993](https://github.com/Yidadaa/ChatGPT...
(UNPAIRED_BRACKETS)
[typographical] ~107-~107: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...sues/993) - [x] 이미지로 공유하거나 ShareGPT로 공유 [ChatGPTNextWeb#1741](https://github.com/Yidadaa/ChatGP...
(UNPAIRED_BRACKETS)
[uncategorized] ~109-~109: Les deux-points sont précédés d’une espace insécable.
Context: ...1741) - [x] Tauri 기반 데스크톱 앱 - [x] 자체 모델 호스팅: [RWKV-Runner](https://github.com/josSto...
(FRENCH_WHITESPACE)
[uncategorized] ~110-~110: Les deux-points sont précédés d’une espace insécable.
Context: ...all-j, cerebras, falcon, dolly 등) - [x] 아티팩트: 생성된 콘텐츠 및 웹페이지를 별도 창으로 미리보기, 복사, 공유 가능 ...
(FRENCH_WHITESPACE)
[typographical] ~110-~110: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ... 생성된 콘텐츠 및 웹페이지를 별도 창으로 미리보기, 복사, 공유 가능 [ChatGPTNextWeb#5092](https://github.com/ChatGPTNextWeb...
(UNPAIRED_BRACKETS)
[uncategorized] ~111-~111: Les deux-points sont précédés d’une espace insécable.
Context: ...xtWeb/ChatGPT-Next-Web/pull/5092) - [x] 플러그인: 웹 검색, 계산기, 기타 외부 API 기능 지원 [ChatGPTNextWeb#165](https...
(FRENCH_WHITESPACE)
[typographical] ~111-~111: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...om/ChatGPTNextWeb/issues/165) [ChatGPTNextWeb#5353](https://github.com/ChatGPTNextWeb...
(UNPAIRED_BRACKETS)
[typographical] ~112-~112: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...T-Next-Web/issues/5353) - [x] 실시간 채팅 지원 [ChatGPTNextWeb#5672](https://github.com/ChatGPTNextWeb...
(UNPAIRED_BRACKETS)
[typographical] ~117-~117: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ... ## 🚀 최근 업데이트 - 🚀 v2.15.8 실시간 채팅 지원 [ChatGPTNextWeb#5672](https://github.com/ChatGPTNextWeb...
(UNPAIRED_BRACKETS)
[typographical] ~118-~118: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ....15.4 Tauri 기반 LLM API 호출 기능 추가 → 보안 강화 [ChatGPTNextWeb#5379](https://github.com/ChatGPTNextWeb...
(UNPAIRED_BRACKETS)
[typographical] ~119-~119: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...ChatGPTNextWeb/issues/5379) - 🚀 v2.15.0 플러그인 기능 추가 → [NextChat-Awesome-Plugins](https://github...
(UNPAIRED_BRACKETS)
[uncategorized] ~125-~125: Les deux-points sont précédés d’une espace insécable.
Context: ... 내용을 이미지로, 또는 ShareGPT로 공유 가능 - 🚀 v2.0 릴리즈: 프롬프트 템플릿 생성 및 아이디어 구현 가능! → [ChatGPT Pr...
(FRENCH_WHITESPACE)
[uncategorized] ~125-~125: Le point d’exclamation est précédé d’une espace fine insécable.
Context: ...가능 - 🚀 v2.0 릴리즈: 프롬프트 템플릿 생성 및 아이디어 구현 가능! → [ChatGPT Prompt Engineering Tips](htt...
(FRENCH_WHITESPACE)
[typographical] ~131-~131: Caractère d’apostrophe incorrect.
Context: ...hatGPT-Next-Web) 버튼을 클릭해 Vercel에 배포합니다. CODE
는 페이지 비밀번호라는 점을 기억하세요. 3. Enjoy :)...
(APOS_INCORRECT)
[uncategorized] ~143-~143: Les deux-points sont précédés d’une espace insécable.
Context: ...크하지 않고 새로 생성했기 때문입니다. 다음 절차에 따라 다시 배포를 권장합니다: 1. 기존 레포 삭제 2. 우측 상단 "Fork" 버튼 클릭 → 포크...
(FRENCH_WHITESPACE)
[typographical] ~148-~148: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...포크 생성 3. 포크된 프로젝트를 다시 Vercel에 배포 → 자세한 튜토리얼 보기 ### 자...
(UNPAIRED_BRACKETS)
[uncategorized] ~152-~152: Ce signe de ponctuation semble répété.
Context: ... > Upstream Sync 오류 발생 시, 수동으로 코드 업데이트하세요...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[uncategorized] ~154-~154: Les deux-points sont précédés d’une espace insécable.
Context: ...약으로 인해 Actions 페이지에서 아래 항목들을 수동으로 활성화해야 합니다: - Workflows
- Upstream Sync Action
...
(FRENCH_WHITESPACE)
[uncategorized] ~159-~159: Les deux-points sont précédés d’une espace insécable.
Context: ... - Upstream Sync Action
이후 매 시간 자동으로 업데이트됩니다: 
[typographical] ~173-~173: Caractère d’apostrophe incorrect.
Context: ...프로젝트는 제한된 접근 제어를 제공합니다. Vercel 환경 변수에 CODE
를 다음 형식으로 추가하세요. value는 ,를 통해 구분된 비밀번호여야...
(APOS_INCORRECT)
[uncategorized] ~173-~173: Les deux-points sont précédés d’une espace insécable.
Context: ... 형식으로 추가하세요. value는 ,를 통해 구분된 비밀번호여야 합니다.: code1,code2,code3
수정 후 반드시 다시...
(FRENCH_WHITESPACE)
[uncategorized] ~193-~193: Les deux-points sont précédés d’une espace insécable.
Context: ...면 쉼표로 연결합니다. ### BASE_URL
(선택 사항) > 기본값: https://api.openai.com
> 예시: `http:/...
(FRENCH_WHITESPACE)
[uncategorized] ~195-~195: Les deux-points sont précédés d’une espace insécable.
Context: ...사항) > 기본값: https://api.openai.com
> 예시: http://your-openai-proxy.com
OpenAI ...
(FRENCH_WHITESPACE)
[uncategorized] ~205-~205: Les deux-points sont précédés d’une espace insécable.
Context: ... ID를 지정합니다. ### AZURE_URL
(선택 사항) > 예시: https://{azure-resource-url}/openai Az...
(FRENCH_WHITESPACE)
[uncategorized] ~205-~205: L’URL contient un caractère invalide « } » selon RFC 1738. Les caractères spéciaux peuvent être encodés avec % suivi de deux chiffres hexadécimaux.
Context: ... 지정합니다. ### AZURE_URL
(선택 사항) > 예시: https://{azure-resource-url}/openai Azure 배포 URL입니다. ### AZURE_API_KEY
...
(URL)
[uncategorized] ~295-~295: Les deux-points sont précédés d’une espace insécable.
Context: ...니다. ### HIDE_USER_API_KEY
(선택 사항) > 기본값: 비어 있음 사용자가 자신의 API 키를 입력하지 못하게 하려면 이 값...
(FRENCH_WHITESPACE)
[uncategorized] ~301-~301: Les deux-points sont précédés d’une espace insécable.
Context: ...로 설정하세요. ### DISABLE_GPT4
(선택 사항) > 기본값: 비어 있음 사용자가 GPT-4를 사용하지 못하게 하려면 이 값을 1로...
(FRENCH_WHITESPACE)
[uncategorized] ~307-~307: Les deux-points sont précédés d’une espace insécable.
Context: ... ### ENABLE_BALANCE_QUERY
(선택 사항) > 기본값: 비어 있음 사용자가 쿼리 잔액을 조회할 수 있도록 하려면 이 값을 1...
(FRENCH_WHITESPACE)
[uncategorized] ~313-~313: Les deux-points sont précédés d’une espace insécable.
Context: ...세요. ### DISABLE_FAST_LINK
(선택 사항) > 기본값: 비어 있음 URL에서 설정을 파싱하는 기능을 비활성화하려면 이 값을 ...
(FRENCH_WHITESPACE)
[uncategorized] ~319-~319: Les deux-points sont précédés d’une espace insécable.
Context: ... 설정하세요. ### CUSTOM_MODELS
(선택 사항) > 기본값: 비어 있음 > 예시: `+llama,+claude-2,-gpt-3....
(FRENCH_WHITESPACE)
[uncategorized] ~320-~320: Les deux-points sont précédés d’une espace insécable.
Context: ...USTOM_MODELS(선택 사항) > 기본값: 비어 있음 > 예시:
+llama,+claude-2,-gpt-3.5-turbo,gpt-4-...
(FRENCH_WHITESPACE)
[typographical] ~321-~321: Caractère d’apostrophe incorrect.
Context: ...bo,gpt-4-1106-preview=gpt-4-turbo 이는
llama,
claude-2를 모델 리스트에 추가하고,
gpt-3.5-tur...
(APOS_INCORRECT)
[typographical] ~321-~321: Caractère d’apostrophe incorrect.
Context: ...1106-preview=gpt-4-turbo 이는
llama,
claude-2를 모델 리스트에 추가하고,
gpt-3.5-turbo를 제거하며,
...
(APOS_INCORRECT)
[typographical] ~321-~321: Caractère d’apostrophe incorrect.
Context: ... 이는 llama
, claude-2
를 모델 리스트에 추가하고, gpt-3.5-turbo
를 제거하며, gpt-4-1106-preview
를 `gpt-4-tur...
(APOS_INCORRECT)
[typographical] ~321-~321: Caractère d’apostrophe incorrect.
Context: ...를 모델 리스트에 추가하고,
gpt-3.5-turbo를 제거하며,
gpt-4-1106-preview를
gpt-4-turbo`로 표시합니다. 사용자 지정 모델 제어 시 ...
(APOS_INCORRECT)
[typographical] ~321-~321: Caractère d’apostrophe incorrect.
Context: ...3.5-turbo를 제거하며,
gpt-4-1106-preview를
gpt-4-turbo로 표시합니다. 사용자 지정 모델 제어 시
+는 추가,
-`는 제...
(APOS_INCORRECT)
[typographical] ~323-~323: Caractère d’apostrophe incorrect.
Context: ...를 gpt-4-turbo
로 표시합니다. 사용자 지정 모델 제어 시 +
는 추가, -
는 제거, 이름=표시이름
은 모델명 커스터마이징을 의미...
(APOS_INCORRECT)
[typographical] ~323-~323: Caractère d’apostrophe incorrect.
Context: ...turbo로 표시합니다. 사용자 지정 모델 제어 시
+는 추가,
-는 제거,
이름=표시이름`은 모델명 커스터마이징을 의미합니다. 쉼표로 ...
(APOS_INCORRECT)
[typographical] ~323-~323: Caractère d’apostrophe incorrect.
Context: ...시합니다. 사용자 지정 모델 제어 시 +
는 추가, -
는 제거, 이름=표시이름
은 모델명 커스터마이징을 의미합니다. 쉼표로 구분하세요. - `-all...
(APOS_INCORRECT)
[uncategorized] ~328-~328: Les deux-points sont précédés d’une espace insécable.
Context: ...활성화 - +all
은 기본 모델을 모두 활성화 Azure 용법 예시: modelName@Azure=deploymentName
→ 배포 이...
(FRENCH_WHITESPACE)
[uncategorized] ~328-~328: Une espace doit être ajoutée entre ces deux mots ou intégrez ce nouveau mot à votre dictionnaire personnel.
Context: ... - +all
은 기본 모델을 모두 활성화 Azure 용법 예시: modelName@Azure=deploymentName
→ 배포 이름을 커스터마이징 가능 > ...
(MOTS_COLLES)
[uncategorized] ~329-~329: Les deux-points sont précédés d’une espace insécable.
Context: ...=deploymentName→ 배포 이름을 커스터마이징 가능 > 예시:
+gpt-3.5-turbo@Azure=gpt35→ 리스트에
gp...
(FRENCH_WHITESPACE)
[uncategorized] ~329-~329: Une espace doit être ajoutée entre ces deux mots ou intégrez ce nouveau mot à votre dictionnaire personnel.
Context: ...loymentName→ 배포 이름을 커스터마이징 가능 > 예시:
+gpt-3.5-turbo@Azure=gpt35→ 리스트에
gpt35(Azure)` 표시됨 > Az...
(MOTS_COLLES)
[typographical] ~329-~329: Une espace est nécessaire.
Context: ...예시: +gpt-3.5-turbo@Azure=gpt35
→ 리스트에 gpt35(Azure)
표시됨 > Azure 모델만 사용할 경우: `-all,...
(PARENTHESES)
[uncategorized] ~330-~330: Les deux-points sont précédés d’une espace insécable.
Context: ...트에 gpt35(Azure)
표시됨 > Azure 모델만 사용할 경우: -all,+gpt-3.5-turbo@Azure=gpt35
Byte...
(FRENCH_WHITESPACE)
[uncategorized] ~332-~332: Les deux-points sont précédés d’une espace insécable.
Context: ...pt-3.5-turbo@Azure=gpt35 ByteDance 용법 예시:
modelName@bytedance=deploymentName` ...
(FRENCH_WHITESPACE)
[uncategorized] ~333-~333: Les deux-points sont précédés d’une espace insécable.
Context: ...modelName@bytedance=deploymentName > 예시:
+Doubao-lite-4k@bytedance=ep-xxxxx-xxx...
(FRENCH_WHITESPACE)
[uncategorized] ~333-~333: La lettre x peut être remplacée par un autre signe typographique.
Context: ...lName@bytedance=deploymentName > 예시:
+Doubao-lite-4k@bytedance=ep-xxxxx-xxx→
Doubao-lite-4k(ByteDance)`로 표시됨 ##...
(ASTERISQUE)
[typographical] ~333-~333: Caractère d’apostrophe incorrect.
Context: ...oubao-lite-4k@bytedance=ep-xxxxx-xxx→
Doubao-lite-4k(ByteDance)로 표시됨 ###
DEFAULT_MODEL` (선택 사항) 기본 모...
(APOS_INCORRECT)
[uncategorized] ~341-~341: Les deux-points sont précédés d’une espace insécable.
Context: ... 변경합니다. ### VISION_MODELS
(선택 사항) > 기본값: 비어 있음 > 예시: `gpt-4-vision,claude-3-op...
(FRENCH_WHITESPACE)
[uncategorized] ~342-~342: Les deux-points sont précédés d’une espace insécable.
Context: ...ISION_MODELS(선택 사항) > 기본값: 비어 있음 > 예시:
gpt-4-vision,claude-3-opus,my-custom-m...
(FRENCH_WHITESPACE)
[typographical] ~343-~343: Caractère d’apostrophe incorrect.
Context: ...om-model 위의 모델들에 시각 기능을 부여합니다 (기본적으로
"vision",
"claude-3",
"gemini-1.5"` 키워드를 포함한 ...
(APOS_INCORRECT)
[typographical] ~343-~343: Caractère d’apostrophe incorrect.
Context: ...위의 모델들에 시각 기능을 부여합니다 (기본적으로 "vision"
, "claude-3"
, "gemini-1.5"
키워드를 포함한 모델은 자동 인식됨). 기...
(APOS_INCORRECT)
[uncategorized] ~349-~349: Les deux-points sont précédés d’une espace insécable.
Context: ...리고자 할 때 사용합니다. - 각 주소는 완전한 endpoint 여야 함: https://xxxx/yyy
- 여러 주소는 ,
로 구분 ...
(FRENCH_WHITESPACE)
[typographical] ~350-~350: Caractère d’apostrophe incorrect.
Context: ...int 여야 함: https://xxxx/yyy
- 여러 주소는 ,
로 구분 ### DEFAULT_INPUT_TEMPLATE
(선택 사...
(APOS_INCORRECT)
[uncategorized] ~392-~392: Les deux-points sont précédés d’une espace insécable.
Context: ...루트에 .env.local
파일을 만들고, 아래와 같이 API 키를 입력하세요: ``` OPENAI_API_KEY=<여기에 API 키 입력> # O...
(FRENCH_WHITESPACE)
[uncategorized] ~424-~424: Les deux-points sont précédés d’une espace insécable.
Context: ...yidadaa/chatgpt-next-web 서비스에 프록시를 사용하려면:
shell docker run -d -p 3000:3000 \ ...
(FRENCH_WHITESPACE)
[uncategorized] ~434-~434: Les deux-points sont précédés d’une espace insécable.
Context: ...adaa/chatgpt-next-web 프록시에 인증이 필요한 경우:
shell -e PROXY_URL="http://127.0.0....
(FRENCH_WHITESPACE)
[uncategorized] ~440-~440: Les deux-points sont précédés d’une espace insécable.
Context: ...p://127.0.0.1:7890 user pass" MCP를 활성화하려면:
docker run -d -p 3000:3000 \ -e...
(FRENCH_WHITESPACE)
[uncategorized] ~458-~458: Les deux-points sont précédés d’une espace insécable.
Context: ...Next-Web/main/scripts/setup.sh) ```
(FRENCH_WHITESPACE)
[uncategorized] ~462-~462: Ce signe de ponctuation semble répété.
Context: ... 사용하세요. ## 채팅 기록 동기화 (UpStash) | 简体中文 | [En...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[uncategorized] ~462-~462: Ce signe de ponctuation semble répété.
Context: .../synchronise-chat-logs-cn.md) | English | [It...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[uncategorized] ~462-~462: Ce signe de ponctuation semble répété.
Context: ...synchronise-chat-logs-en.md) | Italiano | [日本...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[uncategorized] ~462-~462: Ce signe de ponctuation semble répété.
Context: ...docs/synchronise-chat-logs-es.md) | 日本語 | [한국...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[typographical] ~462-~462: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...](./docs/synchronise-chat-logs-ja.md) | 한국어...
(UNPAIRED_BRACKETS)
[uncategorized] ~466-~466: Ce signe de ponctuation semble répété.
Context: ... ## 문서 (Documentation) > 더 많은 문서는 docs 디렉토리를 참고하세요. - [Cloudflare 배포 가이...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[uncategorized] ~476-~476: Ce signe de ponctuation semble répété.
Context: ...역 (Translation) 새로운 번역을 추가하고 싶다면, 이 문서를 읽어보세요. ## 후원 (Do...
(DOUBLE_PONCTUATION_NOT_DETECTED)
🪛 markdownlint-cli2 (0.17.2)
README_KO.md
23-23: Link fragments should be valid
(MD051, link-fragments)
36-36: Images should have alternate text (alt text)
(MD045, no-alt-text)
51-51: Blank line inside blockquote
(MD028, no-blanks-blockquote)
60-60: Images should have alternate text (alt text)
(MD045, no-alt-text)
74-74: Bare URL used
(MD034, no-bare-urls)
175-175: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
194-194: Blank line inside blockquote
(MD028, no-blanks-blockquote)
394-394: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
442-442: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
487-487: Images should have alternate text (alt text)
(MD045, no-alt-text)
🧰 Additional context used
🪛 LanguageTool
README_KO.md
[uncategorized] ~17-~17: Ce signe typographique semble être doublé.
Context: ...Pro 지원 [![Saas][Saas-image]][saas-url] [![Web][Web-image]][web-url] [![Windows][Windows-image]][do...
(DOUBLE_TYPOS)
[uncategorized] ~18-~18: Ce signe typographique semble être doublé.
Context: ...[saas-url] [![Web][Web-image]][web-url] [![Windows][Windows-image]][download-url] [![MacOS][MacOS-image]][d...
(DOUBLE_TYPOS)
[uncategorized] ~19-~19: Ce signe typographique semble être doublé.
Context: ...[Windows][Windows-image]][download-url] [![MacOS][MacOS-image]][download-url] [![Linux][Linux-image]][d...
(DOUBLE_TYPOS)
[uncategorized] ~48-~48: Le point d’exclamation est précédé d’une espace fine insécable.
Context: ...인 애플리케이션을 제공합니다. ## 🥳 NextChat iOS 버전 출시! > 👉 [지금 설치하기](https://apps.apple.com/...
(FRENCH_WHITESPACE)
[typographical] ~50-~50: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...제공합니다. ## 🥳 NextChat iOS 버전 출시! > 👉 [지금 설치하기](https://apps.apple.com/us/app/n...
(UNPAIRED_BRACKETS)
[typographical] ~52-~52: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: .../us/app/nextchat-ai/id6743085599) > ❤️ [소스 코드 곧 공개 예정](https://github.com/ChatGP...
(UNPAIRED_BRACKETS)
[uncategorized] ~56-~56: Le point d’exclamation est précédé d’une espace fine insécable.
Context: ...8310-e3b09fa4b9f3) ## 🫣 NextChat, MCP 지원! > 빌드 전 환경 변수(env) ENABLE_MCP=true
설정...
(FRENCH_WHITESPACE)
[uncategorized] ~64-~64: Les deux-points sont précédés d’une espace insécable.
Context: ... 버전 회사 내부 시스템에 맞춘 프라이빗 배포 및 맞춤형 커스터마이징 지원: - 브랜드 커스터마이징: 기업 이미지에 맞는 UI/UX 테마 ...
(FRENCH_WHITESPACE)
[uncategorized] ~66-~66: Les deux-points sont précédés d’une espace insécable.
Context: ...프라이빗 배포 및 맞춤형 커스터마이징 지원: - 브랜드 커스터마이징: 기업 이미지에 맞는 UI/UX 테마 적용 - 리소스 통합 관리:...
(FRENCH_WHITESPACE)
[uncategorized] ~67-~67: Les deux-points sont précédés d’une espace insécable.
Context: ...**: 기업 이미지에 맞는 UI/UX 테마 적용 - 리소스 통합 관리: 다양한 AI 모델을 통합하여 팀원이 손쉽게 사용 가능 - **권한 제어...
(FRENCH_WHITESPACE)
[uncategorized] ~68-~68: Les deux-points sont précédés d’une espace insécable.
Context: ... 다양한 AI 모델을 통합하여 팀원이 손쉽게 사용 가능 - 권한 제어: 관리자 패널을 통한 멤버·리소스·지식 베이스 권한 설정 - **지식 통...
(FRENCH_WHITESPACE)
[uncategorized] ~69-~69: Les deux-points sont précédés d’une espace insécable.
Context: ...관리자 패널을 통한 멤버·리소스·지식 베이스 권한 설정 - 지식 통합: 사내 문서 및 데이터와 AI를 결합한 맞춤형 답변 제공 - **보안 감...
(FRENCH_WHITESPACE)
[uncategorized] ~70-~70: Les deux-points sont précédés d’une espace insécable.
Context: ...사내 문서 및 데이터와 AI를 결합한 맞춤형 답변 제공 - 보안 감사: 민감한 질문 차단 및 모든 기록 추적 가능 - *프라이빗 배포 지원...
(FRENCH_WHITESPACE)
[uncategorized] ~71-~71: Les deux-points sont précédés d’une espace insécable.
Context: ...: 민감한 질문 차단 및 모든 기록 추적 가능 - 프라이빗 배포 지원: 주요 클라우드 서비스에 맞춘 배포 옵션 - 지속적 업데이트: 멀...
(FRENCH_WHITESPACE)
[uncategorized] ~72-~72: Les deux-points sont précédés d’une espace insécable.
Context: ...지원**: 주요 클라우드 서비스에 맞춘 배포 옵션 - 지속적 업데이트: 멀티모달 등 최신 AI 기능 지속 반영 엔터프라이즈 문의: **bus...
(FRENCH_WHITESPACE)
[uncategorized] ~74-~74: Les deux-points sont précédés d’une espace insécable.
Context: ...적 업데이트**: 멀티모달 등 최신 AI 기능 지속 반영 엔터프라이즈 문의: business@nextchat.dev ## 🖼️ 스크린샷 ...
(FRENCH_WHITESPACE)
[typographical] ~84-~84: Une espace est nécessaire.
Context: ...소개 - Vercel에서 원클릭 무료 배포 (1분 내 완성) - 모든 OS(Linux/Windows/MacOS)에서 사용 가능한 클라이언트 (~5M...
(PARENTHESES)
[typographical] ~84-~84: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...ux/Windows/MacOS)에서 사용 가능한 클라이언트 (~5MB) [지금 다운 받기](https://github.com/Yidadaa/Cha...
(UNPAIRED_BRACKETS)
[uncategorized] ~86-~86: Les deux-points sont précédés d’une espace insécable.
Context: ...-skynet/LocalAI)와 함께 사용하는 것을 추천 - 개인 정보 보호: 모든 대화 기록은 브라우저에만 저장 - Markdown 지원: LaTe...
(FRENCH_WHITESPACE)
[uncategorized] ~87-~87: Les deux-points sont précédés d’une espace insécable.
Context: ...인 정보 보호: 모든 대화 기록은 브라우저에만 저장 - Markdown 지원: LaTex, Mermaid, 코드 하이라이팅 등 - 반응형 디자인, 다...
(FRENCH_WHITESPACE)
[uncategorized] ~89-~89: Une espace doit être ajoutée entre ces deux mots ou intégrez ce nouveau mot à votre dictionnaire personnel.
Context: ... 반응형 디자인, 다크 모드, PWA 지원 - 빠른 초기 로딩 속도 (~100kb), 스트리밍 응답 - 프롬프트 템플릿 생성/공유/디버깅 지원 (v2) ...
(MOTS_COLLES3)
[uncategorized] ~91-~91: Les deux-points sont précédés d’une espace insécable.
Context: ... 스트리밍 응답 - 프롬프트 템플릿 생성/공유/디버깅 지원 (v2) - v2: 프롬프트 템플릿 기반 도구 생성, 공유, 디버깅 가능 - 고급 프롬프트...
(FRENCH_WHITESPACE)
[uncategorized] ~92-~92: Le trait d’union doit être supprimé.
Context: ... 템플릿 기반 도구 생성, 공유, 디버깅 가능 - 고급 프롬프트 내장 [awesome-chatgpt-prompts-zh](https://github.com/PlexPt/a...
(MOT_TRAIT_MOT)
[typographical] ~92-~92: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: .../PlexPt/awesome-chatgpt-prompts-zh) and [awesome-chatgpt-prompts](https://github....
(UNPAIRED_BRACKETS)
[uncategorized] ~92-~92: Le trait d’union doit être supprimé.
Context: ...PlexPt/awesome-chatgpt-prompts-zh) and [awesome-chatgpt-prompts](https://github.com/f/awesome-c...
(MOT_TRAIT_MOT)
[uncategorized] ~94-~94: Les deux-points sont précédés d’une espace insécable.
Context: ...t-prompts) - 긴 대화 내용 자동 압축 저장으로 토큰 절약 - I18n: English, 简体中文, 繁体中文, 日本語, Français, Esp...
(FRENCH_WHITESPACE)
[uncategorized] ~104-~104: Les deux-points sont précédés d’une espace insécable.
Context: ...over.png) ## 개발 로드맵 - [x] 시스템 프롬프트: 사용자가 정의한 프롬프트를 시스템 프롬프트로 고정하기 [ChatGPTNextWeb#138](ht...
(FRENCH_WHITESPACE)
[typographical] ~104-~104: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...시스템 프롬프트: 사용자가 정의한 프롬프트를 시스템 프롬프트로 고정하기 [ChatGPTNextWeb#138](https://github.com/Yidadaa/ChatGPT...
(UNPAIRED_BRACKETS)
[uncategorized] ~105-~105: Les deux-points sont précédés d’une espace insécable.
Context: .../ChatGPT-Next-Web/issues/138) - [x] 사용자 프롬프트: 사용자 정의 프롬프트를 편집 및 저장하여 리스트로 관리 가능 - [x]...
(FRENCH_WHITESPACE)
[uncategorized] ~106-~106: Les deux-points sont précédés d’une espace insécable.
Context: ...의 프롬프트를 편집 및 저장하여 리스트로 관리 가능 - [x] 프롬프트 템플릿: 사전 정의된 인컨텍스트 프롬프트로 새 채팅 생성 [ChatGPTNextWeb#993](https...
(FRENCH_WHITESPACE)
[typographical] ~106-~106: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...x] 프롬프트 템플릿: 사전 정의된 인컨텍스트 프롬프트로 새 채팅 생성 [ChatGPTNextWeb#993](https://github.com/Yidadaa/ChatGPT...
(UNPAIRED_BRACKETS)
[typographical] ~107-~107: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...sues/993) - [x] 이미지로 공유하거나 ShareGPT로 공유 [ChatGPTNextWeb#1741](https://github.com/Yidadaa/ChatGP...
(UNPAIRED_BRACKETS)
[uncategorized] ~109-~109: Les deux-points sont précédés d’une espace insécable.
Context: ...1741) - [x] Tauri 기반 데스크톱 앱 - [x] 자체 모델 호스팅: [RWKV-Runner](https://github.com/josSto...
(FRENCH_WHITESPACE)
[uncategorized] ~110-~110: Les deux-points sont précédés d’une espace insécable.
Context: ...all-j, cerebras, falcon, dolly 등) - [x] 아티팩트: 생성된 콘텐츠 및 웹페이지를 별도 창으로 미리보기, 복사, 공유 가능 ...
(FRENCH_WHITESPACE)
[typographical] ~110-~110: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ... 생성된 콘텐츠 및 웹페이지를 별도 창으로 미리보기, 복사, 공유 가능 [ChatGPTNextWeb#5092](https://github.com/ChatGPTNextWeb...
(UNPAIRED_BRACKETS)
[uncategorized] ~111-~111: Les deux-points sont précédés d’une espace insécable.
Context: ...xtWeb/ChatGPT-Next-Web/pull/5092) - [x] 플러그인: 웹 검색, 계산기, 기타 외부 API 기능 지원 [ChatGPTNextWeb#165](https...
(FRENCH_WHITESPACE)
[typographical] ~111-~111: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...om/ChatGPTNextWeb/issues/165) [ChatGPTNextWeb#5353](https://github.com/ChatGPTNextWeb...
(UNPAIRED_BRACKETS)
[typographical] ~112-~112: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...T-Next-Web/issues/5353) - [x] 실시간 채팅 지원 [ChatGPTNextWeb#5672](https://github.com/ChatGPTNextWeb...
(UNPAIRED_BRACKETS)
[typographical] ~117-~117: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ... ## 🚀 최근 업데이트 - 🚀 v2.15.8 실시간 채팅 지원 [ChatGPTNextWeb#5672](https://github.com/ChatGPTNextWeb...
(UNPAIRED_BRACKETS)
[typographical] ~118-~118: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ....15.4 Tauri 기반 LLM API 호출 기능 추가 → 보안 강화 [ChatGPTNextWeb#5379](https://github.com/ChatGPTNextWeb...
(UNPAIRED_BRACKETS)
[typographical] ~119-~119: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...ChatGPTNextWeb/issues/5379) - 🚀 v2.15.0 플러그인 기능 추가 → [NextChat-Awesome-Plugins](https://github...
(UNPAIRED_BRACKETS)
[uncategorized] ~125-~125: Les deux-points sont précédés d’une espace insécable.
Context: ... 내용을 이미지로, 또는 ShareGPT로 공유 가능 - 🚀 v2.0 릴리즈: 프롬프트 템플릿 생성 및 아이디어 구현 가능! → [ChatGPT Pr...
(FRENCH_WHITESPACE)
[uncategorized] ~125-~125: Le point d’exclamation est précédé d’une espace fine insécable.
Context: ...가능 - 🚀 v2.0 릴리즈: 프롬프트 템플릿 생성 및 아이디어 구현 가능! → [ChatGPT Prompt Engineering Tips](htt...
(FRENCH_WHITESPACE)
[typographical] ~131-~131: Caractère d’apostrophe incorrect.
Context: ...hatGPT-Next-Web) 버튼을 클릭해 Vercel에 배포합니다. CODE
는 페이지 비밀번호라는 점을 기억하세요. 3. Enjoy :)...
(APOS_INCORRECT)
[uncategorized] ~143-~143: Les deux-points sont précédés d’une espace insécable.
Context: ...크하지 않고 새로 생성했기 때문입니다. 다음 절차에 따라 다시 배포를 권장합니다: 1. 기존 레포 삭제 2. 우측 상단 "Fork" 버튼 클릭 → 포크...
(FRENCH_WHITESPACE)
[typographical] ~148-~148: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...포크 생성 3. 포크된 프로젝트를 다시 Vercel에 배포 → 자세한 튜토리얼 보기 ### 자...
(UNPAIRED_BRACKETS)
[uncategorized] ~152-~152: Ce signe de ponctuation semble répété.
Context: ... > Upstream Sync 오류 발생 시, 수동으로 코드 업데이트하세요...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[uncategorized] ~154-~154: Les deux-points sont précédés d’une espace insécable.
Context: ...약으로 인해 Actions 페이지에서 아래 항목들을 수동으로 활성화해야 합니다: - Workflows
- Upstream Sync Action
...
(FRENCH_WHITESPACE)
[uncategorized] ~159-~159: Les deux-points sont précédés d’une espace insécable.
Context: ... - Upstream Sync Action
이후 매 시간 자동으로 업데이트됩니다: 
[typographical] ~173-~173: Caractère d’apostrophe incorrect.
Context: ...프로젝트는 제한된 접근 제어를 제공합니다. Vercel 환경 변수에 CODE
를 다음 형식으로 추가하세요. value는 ,를 통해 구분된 비밀번호여야...
(APOS_INCORRECT)
[uncategorized] ~173-~173: Les deux-points sont précédés d’une espace insécable.
Context: ... 형식으로 추가하세요. value는 ,를 통해 구분된 비밀번호여야 합니다.: code1,code2,code3
수정 후 반드시 다시...
(FRENCH_WHITESPACE)
[uncategorized] ~193-~193: Les deux-points sont précédés d’une espace insécable.
Context: ...면 쉼표로 연결합니다. ### BASE_URL
(선택 사항) > 기본값: https://api.openai.com
> 예시: `http:/...
(FRENCH_WHITESPACE)
[uncategorized] ~195-~195: Les deux-points sont précédés d’une espace insécable.
Context: ...사항) > 기본값: https://api.openai.com
> 예시: http://your-openai-proxy.com
OpenAI ...
(FRENCH_WHITESPACE)
[uncategorized] ~205-~205: Les deux-points sont précédés d’une espace insécable.
Context: ... ID를 지정합니다. ### AZURE_URL
(선택 사항) > 예시: https://{azure-resource-url}/openai Az...
(FRENCH_WHITESPACE)
[uncategorized] ~205-~205: L’URL contient un caractère invalide « } » selon RFC 1738. Les caractères spéciaux peuvent être encodés avec % suivi de deux chiffres hexadécimaux.
Context: ... 지정합니다. ### AZURE_URL
(선택 사항) > 예시: https://{azure-resource-url}/openai Azure 배포 URL입니다. ### AZURE_API_KEY
...
(URL)
[uncategorized] ~295-~295: Les deux-points sont précédés d’une espace insécable.
Context: ...니다. ### HIDE_USER_API_KEY
(선택 사항) > 기본값: 비어 있음 사용자가 자신의 API 키를 입력하지 못하게 하려면 이 값...
(FRENCH_WHITESPACE)
[uncategorized] ~301-~301: Les deux-points sont précédés d’une espace insécable.
Context: ...로 설정하세요. ### DISABLE_GPT4
(선택 사항) > 기본값: 비어 있음 사용자가 GPT-4를 사용하지 못하게 하려면 이 값을 1로...
(FRENCH_WHITESPACE)
[uncategorized] ~307-~307: Les deux-points sont précédés d’une espace insécable.
Context: ... ### ENABLE_BALANCE_QUERY
(선택 사항) > 기본값: 비어 있음 사용자가 쿼리 잔액을 조회할 수 있도록 하려면 이 값을 1...
(FRENCH_WHITESPACE)
[uncategorized] ~313-~313: Les deux-points sont précédés d’une espace insécable.
Context: ...세요. ### DISABLE_FAST_LINK
(선택 사항) > 기본값: 비어 있음 URL에서 설정을 파싱하는 기능을 비활성화하려면 이 값을 ...
(FRENCH_WHITESPACE)
[uncategorized] ~319-~319: Les deux-points sont précédés d’une espace insécable.
Context: ... 설정하세요. ### CUSTOM_MODELS
(선택 사항) > 기본값: 비어 있음 > 예시: `+llama,+claude-2,-gpt-3....
(FRENCH_WHITESPACE)
[uncategorized] ~320-~320: Les deux-points sont précédés d’une espace insécable.
Context: ...USTOM_MODELS(선택 사항) > 기본값: 비어 있음 > 예시:
+llama,+claude-2,-gpt-3.5-turbo,gpt-4-...
(FRENCH_WHITESPACE)
[typographical] ~321-~321: Caractère d’apostrophe incorrect.
Context: ...bo,gpt-4-1106-preview=gpt-4-turbo 이는
llama,
claude-2를 모델 리스트에 추가하고,
gpt-3.5-tur...
(APOS_INCORRECT)
[typographical] ~321-~321: Caractère d’apostrophe incorrect.
Context: ...1106-preview=gpt-4-turbo 이는
llama,
claude-2를 모델 리스트에 추가하고,
gpt-3.5-turbo를 제거하며,
...
(APOS_INCORRECT)
[typographical] ~321-~321: Caractère d’apostrophe incorrect.
Context: ... 이는 llama
, claude-2
를 모델 리스트에 추가하고, gpt-3.5-turbo
를 제거하며, gpt-4-1106-preview
를 `gpt-4-tur...
(APOS_INCORRECT)
[typographical] ~321-~321: Caractère d’apostrophe incorrect.
Context: ...를 모델 리스트에 추가하고,
gpt-3.5-turbo를 제거하며,
gpt-4-1106-preview를
gpt-4-turbo`로 표시합니다. 사용자 지정 모델 제어 시 ...
(APOS_INCORRECT)
[typographical] ~321-~321: Caractère d’apostrophe incorrect.
Context: ...3.5-turbo를 제거하며,
gpt-4-1106-preview를
gpt-4-turbo로 표시합니다. 사용자 지정 모델 제어 시
+는 추가,
-`는 제...
(APOS_INCORRECT)
[typographical] ~323-~323: Caractère d’apostrophe incorrect.
Context: ...를 gpt-4-turbo
로 표시합니다. 사용자 지정 모델 제어 시 +
는 추가, -
는 제거, 이름=표시이름
은 모델명 커스터마이징을 의미...
(APOS_INCORRECT)
[typographical] ~323-~323: Caractère d’apostrophe incorrect.
Context: ...turbo로 표시합니다. 사용자 지정 모델 제어 시
+는 추가,
-는 제거,
이름=표시이름`은 모델명 커스터마이징을 의미합니다. 쉼표로 ...
(APOS_INCORRECT)
[typographical] ~323-~323: Caractère d’apostrophe incorrect.
Context: ...시합니다. 사용자 지정 모델 제어 시 +
는 추가, -
는 제거, 이름=표시이름
은 모델명 커스터마이징을 의미합니다. 쉼표로 구분하세요. - `-all...
(APOS_INCORRECT)
[uncategorized] ~328-~328: Les deux-points sont précédés d’une espace insécable.
Context: ...활성화 - +all
은 기본 모델을 모두 활성화 Azure 용법 예시: modelName@Azure=deploymentName
→ 배포 이...
(FRENCH_WHITESPACE)
[uncategorized] ~328-~328: Une espace doit être ajoutée entre ces deux mots ou intégrez ce nouveau mot à votre dictionnaire personnel.
Context: ... - +all
은 기본 모델을 모두 활성화 Azure 용법 예시: modelName@Azure=deploymentName
→ 배포 이름을 커스터마이징 가능 > ...
(MOTS_COLLES)
[uncategorized] ~329-~329: Les deux-points sont précédés d’une espace insécable.
Context: ...=deploymentName→ 배포 이름을 커스터마이징 가능 > 예시:
+gpt-3.5-turbo@Azure=gpt35→ 리스트에
gp...
(FRENCH_WHITESPACE)
[uncategorized] ~329-~329: Une espace doit être ajoutée entre ces deux mots ou intégrez ce nouveau mot à votre dictionnaire personnel.
Context: ...loymentName→ 배포 이름을 커스터마이징 가능 > 예시:
+gpt-3.5-turbo@Azure=gpt35→ 리스트에
gpt35(Azure)` 표시됨 > Az...
(MOTS_COLLES)
[typographical] ~329-~329: Une espace est nécessaire.
Context: ...예시: +gpt-3.5-turbo@Azure=gpt35
→ 리스트에 gpt35(Azure)
표시됨 > Azure 모델만 사용할 경우: `-all,...
(PARENTHESES)
[uncategorized] ~330-~330: Les deux-points sont précédés d’une espace insécable.
Context: ...트에 gpt35(Azure)
표시됨 > Azure 모델만 사용할 경우: -all,+gpt-3.5-turbo@Azure=gpt35
Byte...
(FRENCH_WHITESPACE)
[uncategorized] ~332-~332: Les deux-points sont précédés d’une espace insécable.
Context: ...pt-3.5-turbo@Azure=gpt35 ByteDance 용법 예시:
modelName@bytedance=deploymentName` ...
(FRENCH_WHITESPACE)
[uncategorized] ~333-~333: Les deux-points sont précédés d’une espace insécable.
Context: ...modelName@bytedance=deploymentName > 예시:
+Doubao-lite-4k@bytedance=ep-xxxxx-xxx...
(FRENCH_WHITESPACE)
[uncategorized] ~333-~333: La lettre x peut être remplacée par un autre signe typographique.
Context: ...lName@bytedance=deploymentName > 예시:
+Doubao-lite-4k@bytedance=ep-xxxxx-xxx→
Doubao-lite-4k(ByteDance)`로 표시됨 ##...
(ASTERISQUE)
[typographical] ~333-~333: Caractère d’apostrophe incorrect.
Context: ...oubao-lite-4k@bytedance=ep-xxxxx-xxx→
Doubao-lite-4k(ByteDance)로 표시됨 ###
DEFAULT_MODEL` (선택 사항) 기본 모...
(APOS_INCORRECT)
[uncategorized] ~341-~341: Les deux-points sont précédés d’une espace insécable.
Context: ... 변경합니다. ### VISION_MODELS
(선택 사항) > 기본값: 비어 있음 > 예시: `gpt-4-vision,claude-3-op...
(FRENCH_WHITESPACE)
[uncategorized] ~342-~342: Les deux-points sont précédés d’une espace insécable.
Context: ...ISION_MODELS(선택 사항) > 기본값: 비어 있음 > 예시:
gpt-4-vision,claude-3-opus,my-custom-m...
(FRENCH_WHITESPACE)
[typographical] ~343-~343: Caractère d’apostrophe incorrect.
Context: ...om-model 위의 모델들에 시각 기능을 부여합니다 (기본적으로
"vision",
"claude-3",
"gemini-1.5"` 키워드를 포함한 ...
(APOS_INCORRECT)
[typographical] ~343-~343: Caractère d’apostrophe incorrect.
Context: ...위의 모델들에 시각 기능을 부여합니다 (기본적으로 "vision"
, "claude-3"
, "gemini-1.5"
키워드를 포함한 모델은 자동 인식됨). 기...
(APOS_INCORRECT)
[uncategorized] ~349-~349: Les deux-points sont précédés d’une espace insécable.
Context: ...리고자 할 때 사용합니다. - 각 주소는 완전한 endpoint 여야 함: https://xxxx/yyy
- 여러 주소는 ,
로 구분 ...
(FRENCH_WHITESPACE)
[typographical] ~350-~350: Caractère d’apostrophe incorrect.
Context: ...int 여야 함: https://xxxx/yyy
- 여러 주소는 ,
로 구분 ### DEFAULT_INPUT_TEMPLATE
(선택 사...
(APOS_INCORRECT)
[uncategorized] ~392-~392: Les deux-points sont précédés d’une espace insécable.
Context: ...루트에 .env.local
파일을 만들고, 아래와 같이 API 키를 입력하세요: ``` OPENAI_API_KEY=<여기에 API 키 입력> # O...
(FRENCH_WHITESPACE)
[uncategorized] ~424-~424: Les deux-points sont précédés d’une espace insécable.
Context: ...yidadaa/chatgpt-next-web 서비스에 프록시를 사용하려면:
shell docker run -d -p 3000:3000 \ ...
(FRENCH_WHITESPACE)
[uncategorized] ~434-~434: Les deux-points sont précédés d’une espace insécable.
Context: ...adaa/chatgpt-next-web 프록시에 인증이 필요한 경우:
shell -e PROXY_URL="http://127.0.0....
(FRENCH_WHITESPACE)
[uncategorized] ~440-~440: Les deux-points sont précédés d’une espace insécable.
Context: ...p://127.0.0.1:7890 user pass" MCP를 활성화하려면:
docker run -d -p 3000:3000 \ -e...
(FRENCH_WHITESPACE)
[uncategorized] ~458-~458: Les deux-points sont précédés d’une espace insécable.
Context: ...Next-Web/main/scripts/setup.sh) ```
(FRENCH_WHITESPACE)
[uncategorized] ~462-~462: Ce signe de ponctuation semble répété.
Context: ... 사용하세요. ## 채팅 기록 동기화 (UpStash) | 简体中文 | [En...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[uncategorized] ~462-~462: Ce signe de ponctuation semble répété.
Context: .../synchronise-chat-logs-cn.md) | English | [It...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[uncategorized] ~462-~462: Ce signe de ponctuation semble répété.
Context: ...synchronise-chat-logs-en.md) | Italiano | [日本...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[uncategorized] ~462-~462: Ce signe de ponctuation semble répété.
Context: ...docs/synchronise-chat-logs-es.md) | 日本語 | [한국...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[typographical] ~462-~462: Pas de correspondance fermante ou ouvrante pour le caractère « ] »
Context: ...](./docs/synchronise-chat-logs-ja.md) | 한국어...
(UNPAIRED_BRACKETS)
[uncategorized] ~466-~466: Ce signe de ponctuation semble répété.
Context: ... ## 문서 (Documentation) > 더 많은 문서는 docs 디렉토리를 참고하세요. - [Cloudflare 배포 가이...
(DOUBLE_PONCTUATION_NOT_DETECTED)
[uncategorized] ~476-~476: Ce signe de ponctuation semble répété.
Context: ...역 (Translation) 새로운 번역을 추가하고 싶다면, 이 문서를 읽어보세요. ## 후원 (Do...
(DOUBLE_PONCTUATION_NOT_DETECTED)
🪛 markdownlint-cli2 (0.17.2)
README_KO.md
23-23: Link fragments should be valid
(MD051, link-fragments)
36-36: Images should have alternate text (alt text)
(MD045, no-alt-text)
51-51: Blank line inside blockquote
(MD028, no-blanks-blockquote)
60-60: Images should have alternate text (alt text)
(MD045, no-alt-text)
74-74: Bare URL used
(MD034, no-bare-urls)
175-175: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
194-194: Blank line inside blockquote
(MD028, no-blanks-blockquote)
394-394: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
442-442: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
487-487: Images should have alternate text (alt text)
(MD045, no-alt-text)
🔇 Additional comments (6)
app/components/artifacts.tsx (2)
109-203
: Well-implemented sharing component with proper error handlingThe component correctly handles both existing and new artifact scenarios, implements proper loading states, and provides good user feedback through toast notifications and modal UI.
205-266
: Solid main component implementationThe component properly orchestrates artifact fetching, preview, and sharing functionality with appropriate loading states and error handling.
app/components/markdown.tsx (4)
176-229
: Well-implemented collapsible code componentThe CustomCode component properly handles height detection, state management, and conditional rendering based on configuration. The implementation follows React best practices.
231-268
: Robust text processing utilitiesBoth
escapeBrackets
andtryWrapHtmlCode
functions handle complex text processing scenarios with comprehensive regex patterns. The logic properly preserves existing code blocks while processing the target content.
288-315
: Excellent markdown enhancements with media supportThe enhanced ReactMarkdown configuration adds valuable features:
- Automatic audio/video player generation for media links
- Bidirectional text support with
dir="auto"
- Custom code component integration
- Proper content preprocessing
These improvements significantly enhance the markdown rendering capabilities.
321-352
: Good addition of fontFamily prop supportThe addition of the
fontFamily
prop provides useful styling flexibility while maintaining backward compatibility with the default "inherit" value.
[<img src="https://zeabur.com/button.svg" alt="Deploy on Zeabur" height="30">](https://zeabur.com/templates/ZBUEFA) [<img src="https://vercel.com/button" alt="Deploy on Vercel" height="30">](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.aichem.org%2FChatGPTNextWeb%2FChatGPT-Next-Web&env=OPENAI_API_KEY&env=CODE&project-name=nextchat&repository-name=NextChat) [<img src="https://gitpod.io/button/open-in-gitpod.svg" alt="Open in Gitpod" height="30">](https://gitpod.io/#https://github.com/ChatGPTNextWeb/NextChat) | ||
|
||
[<img src="https://github.com/user-attachments/assets/903482d4-3e87-4134-9af1-f2588fa90659" height="50" width="" >](https://monica.im/?utm=nxcrp) | ||
|
||
</div> |
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.
🛠️ Refactor suggestion
Add missing alt
attributes for inline <img>
elements
Images at these locations fail markdown-lint rule MD045 and hinder accessibility.
Provide descriptive alt
text to resolve the linter error and improve screen-reader support.
- [<img src="https://github.com/user-attachments/assets/903482d4-3e87-4134-9af1-f2588fa90659" height="50" width="" >](https://monica.im/?utm=nxcrp)
+ [<img src="https://github.com/user-attachments/assets/903482d4-3e87-4134-9af1-f2588fa90659" alt="Monica-im sponsor logo" height="50" width="">](https://monica.im/?utm=nxcrp)
- <img src="https://github.com/user-attachments/assets/d8851f40-4e36-4335-b1a4-ec1e11488c7e" />
+ <img src="https://github.com/user-attachments/assets/d8851f40-4e36-4335-b1a4-ec1e11488c7e" alt="MCP architecture diagram" />
- <img src="https://contrib.rocks/image?repo=ChatGPTNextWeb/ChatGPT-Next-Web" />
+ <img src="https://contrib.rocks/image?repo=ChatGPTNextWeb/ChatGPT-Next-Web" alt="Contributors graph" />
Also applies to: 56-60, 484-488
🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
36-36: Images should have alternate text (alt text)
(MD045, no-alt-text)
🤖 Prompt for AI Agents
In README_KO.md around lines 34 to 38, the inline <img> elements are missing
descriptive alt attributes, causing markdown-lint rule MD045 errors and
accessibility issues. Add meaningful alt text to each <img> tag to describe the
image content clearly for screen readers and to satisfy the linter. Apply the
same fix to the <img> tags at lines 56-60 and 484-488 as well.
1
Summary by CodeRabbit
New Features
Bug Fixes
Documentation
Chores
.dockerignore
and.eslintignore
files for optimized builds and linting.Style
Tests
Refactor