feat: remove assistant description
This commit is contained in:
parent
de17df9f14
commit
31029b0bfd
@ -16,7 +16,6 @@ interface Props extends AssistantSettingPopupShowParams {
|
||||
|
||||
const AssistantSettingPopupContainer: React.FC<Props> = ({ assistant, resolve }) => {
|
||||
const [name, setName] = useState(assistant.name)
|
||||
const [description, setDescription] = useState(assistant.description)
|
||||
const [prompt, setPrompt] = useState(assistant.prompt)
|
||||
const [open, setOpen] = useState(true)
|
||||
const { t } = useTranslation()
|
||||
@ -30,7 +29,7 @@ const AssistantSettingPopupContainer: React.FC<Props> = ({ assistant, resolve })
|
||||
}
|
||||
|
||||
const onClose = () => {
|
||||
resolve({ ...assistant, name, description, prompt })
|
||||
resolve({ ...assistant, name, prompt })
|
||||
}
|
||||
|
||||
return (
|
||||
@ -41,15 +40,6 @@ const AssistantSettingPopupContainer: React.FC<Props> = ({ assistant, resolve })
|
||||
value={name}
|
||||
onChange={(e) => setName(e.target.value)}
|
||||
/>
|
||||
<Box mt={8} mb={8}>
|
||||
{t('common.description')}
|
||||
</Box>
|
||||
<TextArea
|
||||
rows={2}
|
||||
placeholder={t('common.assistant') + t('common.description')}
|
||||
value={description}
|
||||
onChange={(e) => setDescription(e.target.value)}
|
||||
/>
|
||||
<Box mt={8} mb={8}>
|
||||
{t('common.prompt')}
|
||||
</Box>
|
||||
|
||||
@ -4,14 +4,12 @@ export const SYSTEM_ASSISTANTS: SystemAssistant[] = [
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D29',
|
||||
name: '文章总结',
|
||||
description: '自动总结文章内容,帮助读者从中获取更多的信息',
|
||||
prompt: '总结下面的文章,给出总结、摘要、观点三个部分内容,其中观点部分要使用列表列出,使用 Markdown 回复',
|
||||
group: '文章'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D30',
|
||||
name: '论文',
|
||||
description: '根据主题撰写内容翔实、有信服力的论文',
|
||||
prompt:
|
||||
'我希望你能作为一名学者行事。你将负责研究一个你选择的主题,并将研究结果以论文或文章的形式呈现出来。你的任务是确定可靠的来源,以结构良好的方式组织材料,并以引用的方式准确记录。',
|
||||
group: '写作'
|
||||
@ -19,7 +17,6 @@ export const SYSTEM_ASSISTANTS: SystemAssistant[] = [
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D40',
|
||||
name: '翻译成中文',
|
||||
description: '你是一个好用的翻译助手, 可以把任何语言翻译成中文',
|
||||
prompt:
|
||||
'你是一个好用的翻译助手。请将我的英文翻译成中文,将所有非中文的翻译成中文。我发给你所有的话都是需要翻译的内容,你只需要回答翻译结果。翻译结果请符合中文的语言习惯。',
|
||||
group: '翻译'
|
||||
@ -27,7 +24,6 @@ export const SYSTEM_ASSISTANTS: SystemAssistant[] = [
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D41',
|
||||
name: '翻译成英文',
|
||||
description: '你是一个好用的翻译助手, 可以把任何语言翻译成英文',
|
||||
prompt:
|
||||
'你是一个好用的翻译助手。请将我的中文翻译成英文,将所有非中文的翻译成英文。我发给你所有的话都是需要翻译的内容,你只需要回答翻译结果。翻译结果请符合英文的语言习惯。',
|
||||
group: '翻译'
|
||||
@ -35,7 +31,6 @@ export const SYSTEM_ASSISTANTS: SystemAssistant[] = [
|
||||
{
|
||||
id: '43CEDACF-C9EB-431B-848C-4D08EC26EB90',
|
||||
name: '软件工程师',
|
||||
description: '高级软件工程师,可以解答各种技术问题',
|
||||
prompt:
|
||||
'你是一个高级软件工程师,你需要帮我解答各种技术难题、设计技术方案以及编写代码。你编写的代码必须可以正常运行,而且没有任何 Bug 和其他问题。',
|
||||
group: '软件工程师'
|
||||
@ -43,7 +38,6 @@ export const SYSTEM_ASSISTANTS: SystemAssistant[] = [
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D2A',
|
||||
name: '前端工程师',
|
||||
description: '高级前端工程师,可以解答各种技术问题',
|
||||
prompt:
|
||||
'你擅长使用 TypeScript, JavaScript, HMLT, CSS 等编程语言。同时你还会使用 Node.js 及各种包来解决开发中遇到的问题。你还会使用 React, Vue 等前端框架。对于我的问题希望你能给出具体的代码示例,最好能够封装成一个函数方便我复制运行测试。',
|
||||
group: '软件工程师'
|
||||
@ -51,7 +45,6 @@ export const SYSTEM_ASSISTANTS: SystemAssistant[] = [
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D2B',
|
||||
name: '后端工程师',
|
||||
description: '高级后端工程师,可以解答各种技术问题',
|
||||
prompt:
|
||||
'高级后端工程师,技术难题解答,服务器架构,数据库优化,API设计,网络安全,代码审查,性能调优,微服务,分布式系统,容器技术,持续集成/持续部署(CI/CD)。',
|
||||
group: '软件工程师'
|
||||
@ -59,91 +52,78 @@ export const SYSTEM_ASSISTANTS: SystemAssistant[] = [
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D2D',
|
||||
name: '测试工程师',
|
||||
description: '高级测试工程师,可以解答各种测试相关问题',
|
||||
prompt: '你是一个高级测试工程师,你需要帮我解答各种技术难题',
|
||||
group: '软件工程师'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D2E',
|
||||
name: 'Python 工程师',
|
||||
description: '你是一个高级Python工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级Python工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D2F',
|
||||
name: 'Java 工程师',
|
||||
description: '你是一个高级Java工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级Java工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D30',
|
||||
name: 'C# 工程师',
|
||||
description: '你是一个高级C#工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级C#工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D31',
|
||||
name: 'C++ 工程师',
|
||||
description: '你是一个高级C++工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级C++工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D32',
|
||||
name: 'C 工程师',
|
||||
description: '你是一个高级C工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级C工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D33',
|
||||
name: 'Go 工程师',
|
||||
description: '你是一个高级Go工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级Go工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D34',
|
||||
name: 'Rust 工程师',
|
||||
description: '你是一个高级Rust工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级Rust工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D35',
|
||||
name: 'PHP 工程师',
|
||||
description: '你是一个高级PHP工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级PHP工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D36',
|
||||
name: 'Ruby 工程师',
|
||||
description: '你是一个高级Ruby工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级Ruby工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D37',
|
||||
name: 'Swift 工程师',
|
||||
description: '你是一个高级Swift工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级Swift工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D38',
|
||||
name: 'Kotlin 工程师',
|
||||
description: '你是一个高级Kotlin工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级Kotlin工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
},
|
||||
{
|
||||
id: '6B1D8E9F-9B7F-4E2B-8FBB-0F5B6F7B0D39',
|
||||
name: 'Dart 工程师',
|
||||
description: '你是一个高级Dart工程师,你需要帮我解答各种技术难题',
|
||||
prompt: '你是一个高级Dart工程师,你需要帮我解答各种技术难题',
|
||||
group: '编程语言'
|
||||
}
|
||||
|
||||
@ -104,6 +104,7 @@ const resources = {
|
||||
'models.add.group_name': 'Group Name',
|
||||
'models.add.group_name.tooltip': 'Optional e.g. ChatGPT',
|
||||
'models.add.group_name.placeholder': 'Optional e.g. ChatGPT',
|
||||
'models.empty': 'No models found',
|
||||
'assistant.title': 'Default Assistant',
|
||||
'about.description': 'A powerful AI assistant for producer'
|
||||
}
|
||||
@ -149,7 +150,7 @@ const resources = {
|
||||
},
|
||||
assistant: {
|
||||
'default.name': '默认助手',
|
||||
'default.description': '你可以随时随地和我聊天',
|
||||
'default.description': '你好,我是默认助手。你可以立刻开始跟我聊天。',
|
||||
'default.topic.name': '默认话题',
|
||||
'topics.title': '话题',
|
||||
'topics.hide_topics': '隐藏话题',
|
||||
@ -210,6 +211,7 @@ const resources = {
|
||||
'models.add.group_name': '分组名称',
|
||||
'models.add.group_name.tooltip': '例如 ChatGPT',
|
||||
'models.add.group_name.placeholder': '例如 ChatGPT',
|
||||
'models.empty': '没有模型',
|
||||
'assistant.title': '默认助手',
|
||||
'about.description': '一个为创造者而生的 AI 助手'
|
||||
}
|
||||
|
||||
@ -72,7 +72,6 @@ const AppsPage: FC = () => {
|
||||
</Tooltip>
|
||||
)}
|
||||
</AssistantHeader>
|
||||
<AssistantCardDescription>{assistant.description}</AssistantCardDescription>
|
||||
<AssistantCardPrompt>{assistant.prompt}</AssistantCardPrompt>
|
||||
</AssistantCard>
|
||||
</Col>
|
||||
@ -116,14 +115,6 @@ const AssistantHeader = styled.div`
|
||||
align-items: center;
|
||||
`
|
||||
|
||||
const AssistantCardDescription = styled.div`
|
||||
font-size: 12px;
|
||||
color: #888;
|
||||
margin-top: 10px;
|
||||
margin-bottom: 10px;
|
||||
line-height: 1.5;
|
||||
`
|
||||
|
||||
const AssistantCardPrompt = styled.div`
|
||||
color: white;
|
||||
margin-top: 10px;
|
||||
|
||||
@ -93,7 +93,6 @@ const Assistants: FC<Props> = ({ activeAssistant, setActiveAssistant, onCreateAs
|
||||
onClick={() => setActiveAssistant(assistant)}
|
||||
className={assistant.id === activeAssistant?.id ? 'active' : ''}>
|
||||
<AssistantName>{assistant.name}</AssistantName>
|
||||
<AssistantLastMessage>{assistant.description}</AssistantLastMessage>
|
||||
</AssistantItem>
|
||||
</Dropdown>
|
||||
</div>
|
||||
@ -115,14 +114,17 @@ const Container = styled.div`
|
||||
max-width: var(--assistants-width);
|
||||
border-right: 0.5px solid var(--color-border);
|
||||
height: calc(100vh - var(--navbar-height));
|
||||
padding: 10px;
|
||||
overflow-y: auto;
|
||||
`
|
||||
|
||||
const AssistantItem = styled.div`
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding: 10px 15px;
|
||||
padding: 8px 10px;
|
||||
position: relative;
|
||||
border-radius: 5px;
|
||||
margin-bottom: 5px;
|
||||
cursor: pointer;
|
||||
.anticon {
|
||||
display: none;
|
||||
|
||||
@ -27,7 +27,7 @@ const Messages: FC<Props> = ({ assistant, topic }) => {
|
||||
const assistantDefaultMessage: Message = {
|
||||
id: 'assistant',
|
||||
role: 'assistant',
|
||||
content: assistant.description,
|
||||
content: assistant.prompt || t('assistant.default.description'),
|
||||
assistantId: assistant.id,
|
||||
topicId: topic.id,
|
||||
status: 'pending',
|
||||
|
||||
@ -20,13 +20,6 @@ const AssistantSettings: FC = () => {
|
||||
value={defaultAssistant.name}
|
||||
onChange={(e) => updateDefaultAssistant({ ...defaultAssistant, name: e.target.value })}
|
||||
/>
|
||||
<SettingSubtitle>{t('common.description')}</SettingSubtitle>
|
||||
<TextArea
|
||||
rows={2}
|
||||
placeholder={t('common.assistant') + t('common.description')}
|
||||
value={defaultAssistant.description}
|
||||
onChange={(e) => updateDefaultAssistant({ ...defaultAssistant, description: e.target.value })}
|
||||
/>
|
||||
<SettingSubtitle>{t('common.prompt')}</SettingSubtitle>
|
||||
<TextArea
|
||||
rows={4}
|
||||
|
||||
@ -141,7 +141,7 @@ const PopupContainer: React.FC<Props> = ({ provider: _provider, resolve }) => {
|
||||
})}
|
||||
</div>
|
||||
))}
|
||||
{isEmpty(list) && <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} description="No models" />}
|
||||
{isEmpty(list) && <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} description={t('settings.models.empty')} />}
|
||||
</ListContainer>
|
||||
</Modal>
|
||||
)
|
||||
@ -150,7 +150,7 @@ const PopupContainer: React.FC<Props> = ({ provider: _provider, resolve }) => {
|
||||
const onShowModelInfo = (model: Model) => {
|
||||
window.modal.info({
|
||||
title: model.name,
|
||||
content: model.description,
|
||||
content: model?.description,
|
||||
icon: null,
|
||||
maskClosable: true
|
||||
})
|
||||
|
||||
@ -7,7 +7,6 @@ export function getDefaultAssistant(): Assistant {
|
||||
return {
|
||||
id: 'default',
|
||||
name: i18next.t('assistant.default.name'),
|
||||
description: i18next.t('assistant.default.description'),
|
||||
prompt: '',
|
||||
topics: [getDefaultTopic()]
|
||||
}
|
||||
|
||||
@ -3,7 +3,6 @@ import OpenAI from 'openai'
|
||||
export type Assistant = {
|
||||
id: string
|
||||
name: string
|
||||
description: string
|
||||
prompt: string
|
||||
topics: Topic[]
|
||||
model?: Model
|
||||
@ -55,7 +54,6 @@ export type Model = {
|
||||
export type SystemAssistant = {
|
||||
id: string
|
||||
name: string
|
||||
description: string
|
||||
prompt: string
|
||||
group: string
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user