🚀 Inkbot对话式AI模型
Inkbot是一款对话式AI模型,专为解读和响应结构化提示而设计,无论是否有上下文信息均可使用。其独特的结构化提示系统,能让用户根据上下文、元数据和输入内容进行动态对话。
🚀 快速开始
Inkbot使用结构化提示模板系统。
提示模板结构
有上下文时:
<#meta#>
- Date: {current_date}
- Task: {task_name}
<#system#>
{system_prompt}
<#chat#>
<#user#>
{user}
<#user_context#>
{user_context}
<#bot#>
{bot}
无上下文时:
<#meta#>
- Date: {current_date}
- Task: {task_name}
<#system#>
{system_prompt}
<#chat#>
<#user#>
{user}
<#bot#>
{bot}
使用示例
有上下文时:
<#meta#>
- Date: 2023-07-20
- Task: general
<#system#>
A dialogue focused on determining dates based on context clues.
<#chat#>
<#user#>
What is today's date?
<#bot#>
The date is: 2023-07-20
<#user#>
When did the event in the provided context take place?
<#user_context#>
It's the day after new years eve, and I'm starting 2018 with a headache.
<#bot#>
The event in the context took place on: 2018-01-01
无上下文时:
<#meta#>
- Date: 2023-07-20
- Task: general
<#system#>
A simple dialogue about daily queries.
<#chat#>
<#user#>
Will it rain today?
<#bot#>
I am not sure, without knowing your location I am unable to determine the weather.
<#user#>
Can you compose a haiku for me?
<#bot#>
Whispers of the breeze,
Nature's melodies unfold,
Dawn dispels the night.
✨ 主要特性
性能表现
- 该模型在RAG类型查询、根据上下文回答问题以及必要时覆盖记忆方面表现出色。
- 它能够处理非常大的上下文,但有时可能会进入文本循环,尤其是在处理复杂任务时。
- 该模型更注重功能性,而非闲聊,避免在多余的语言上浪费令牌。
📚 详细文档
任务选项
该模型经过多种任务的训练。以下是这些任务的细分,以及帮助指导使用的示例提示。
1. 文本优化
此类任务旨在提高文本的质量和清晰度。
- 清晰度(100个示例)
- 示例提示:
- "请阅读以下内容并进行修改,以确保清晰的沟通和可理解性。"
- "确保以下文本易于任何读者理解。"
- 连贯性(750个示例)
- 示例提示:
- "审查内容并进行调整,以确保其具有逻辑一致性和流畅性。"
- "确保以下段落无缝衔接。"
- 正式化(800个示例)
- 示例提示:
- "请将以下非正式文本转换为更正式的语气。"
- "使给定内容听起来更专业。"
- 语法纠错(1500个示例)
- 示例提示:
- "优化以下内容,重点修复语法错误。"
- "纠正以下文本中的任何语法错误。"
- 中立化(800个示例)
- 示例提示:
- "以中立的语气重写以下内容,消除任何偏见或强烈情绪。"
- "确保以下文本客观,不显示任何个人意见。"
- 文本校正(1400个示例)
- 示例提示:
- "请阅读提供的文档以理解作者的意图。专注于文档中需要修复的问题,如转录错误、标点符号、拼写错误和一致性问题。提供文档的修正版本。"
- 简化(900个示例)
- 示例提示:
- "使用更简单的措辞传达以下内容中的信息。"
- "使以下文本更易于儿童理解。"
2. 内容生成
此类任务涉及创建或扩展内容。
- 知识图谱写作(800个示例)
- 示例提示:
- "使用提供的知识图谱,撰写一篇关于图中主题和实体的文章,融入相关想法。写作时使用想法标签以帮助聚焦。"
- "根据知识图谱中的信息构建一个故事。"
- 摘要生成(1600个示例)
- 示例提示:
- "生成给定文档的详细摘要。"
- "请阅读提供的文档以理解上下文和内容。利用此理解生成摘要。将文章分成若干块,并依次为每块创建摘要。最后给出最终摘要。"
- 释义(1100个示例)
- 示例提示:
- "在保留原意的同时改写以下句子。"
- "你能为以下段落提供另一种表述方式吗?"
3. 内容分析
此类任务用于评估、评分或过滤内容。
- 评分(400个示例)
- 示例提示:
- "根据提供的文档,请在0 - 5的范围内对其作为训练数据的有用性进行评分。"
- 赞助内容提取(5200个示例)
- 示例提示:
- "阅读文档并提取任何明确提及赞助、促销合作或任何形式付费内容的句子或短语。"
4. 信息结构化
此类任务涉及信息的结构化表示或提取。
- 知识图谱构建(3600个示例)
- 示例提示:
- "根据提供的文档创建一个知识图谱。"
- "从对话中提取关键概念和关系以形成知识图谱。"
5. 通用交互
此类任务用于一般问题和交互。
- 通用问题(1600个示例)
- 示例提示:
- "法国的首都是什么?"
- "向一个5岁的孩子解释粒子物理学。"
🔧 技术细节
局限性
- 为获得最佳效果,请遵循提示结构。
- 提供上下文细节时,清晰性对于Inkbot得出准确和有意义的响应至关重要。
- 用户上下文属性的覆盖记忆功能通常仅对接下来的一两个提示有效,之后模型将恢复其原始行为。
- 在处理复杂任务时,如根据上下文中的一组事实创建连贯的故事,随着上下文的填充,可能会出现文本循环。
- 有时模型不知道何时结束知识图谱,这可能导致不断添加节点和边,直到上下文用尽。
附加说明
- 对于8k上下文,使用
rope-freq-scale=0.5
或compress_pos_emb=2
。
- “日期”、“任务”和“系统”是需要在核心对话之外提供的关键元数据组件。
- 当你想提供补充上下文以指导Inkbot的响应时,请使用“用户上下文”。你可以根据需要将其插入聊天记录中,它应在用户指令之后。
- 特定的标签格式,如
<#word#>
,是因为许多API中有针对<|word|>
的过滤器,这样可以使交互更轻松。
📄 许可证
本模型遵循llama2许可证。