Nano Bots:人工智能驱动的机器人,可以作为单个文件轻松共享,旨在支持多个提供商,例如 Cohere Command、Google Gemini、Maritaca AI MariTalk、Mistral AI、Ollama、OpenAI ChatGPT 等,并支持调用工具(函数)。
通过将人工智能的力量引入您的代码编辑器来提高您的工作效率和工作流程!
安装
本地API实例
设置
命令
迅速的
申请
评价
停止
墨盒
市场
默认
快捷方式
建议的默认值
自定义命令
状态
隐私和安全:常见问题
我的文件/代码/内容会被共享或上传到第三方服务吗?
哪些信息可以与第三方人工智能提供商共享?
这些第三方是谁?
是否可以选择避免共享任何信息?
我可以将其用于私人或机密内容/代码吗?
我需要付费才能使用这个吗?
这个项目隶属于 OpenAI 吗?
保证和免责声明
发展
要安装 Nano Bots for Sublime Text,请按照以下步骤操作:
在继续安装之前,请确保安装 Package Control。
打开 Sublime Text,然后使用快捷键ctrl + shift + p打开命令面板。
在命令面板中选择“包控制:安装包”。
搜索“Nano Bots”并按Enter 键安装该软件包。
或者,您可以使用以下命令手动克隆存储库:
克隆 https://github.com/icebaker/sublime-nano-bots.git “/home/me/.config/sublime-text/Packages/Nano Bots”
默认情况下,可以访问公共 Nano Bots API。但是,它仅提供默认卡盒,有时可能会由于速率限制而速度缓慢或不可用。当世界各地的许多用户同时大量使用 API 时,这种情况很常见。
为了获得最佳性能以及开发和个性化您自己的 Cartridge 的机会,建议您使用自己的提供商凭据在本地运行 API 实例。与公共 API 提供的方便但有限的体验相比,这种方法将提供卓越的定制体验。
要将您的包连接到您自己的本地 Nano Bots API,请使用 nano-bots-api 启动本地实例。请注意,本地 API 仍然依赖于外部提供商,外部提供商有自己的安全和隐私政策。但是,如果您选择将 Ollama 与开源模型一起使用,则可以确保所有内容都保留在本地并保持完全私有。
一旦您有权访问 Nano Bots API,您可以转到“首选项”->“设置”并添加以下配置:
{ "NANO_BOTS_API_ADDRESS": "http://localhost:3048", “NANO_BOTS_STREAM”:正确, "NANO_BOTS_END_USER": "anonymous" // 你的名字}
安装后,您将在命令托盘中看到以下命令:
纳米机器人:提示
纳米机器人:申请
纳米机器人:评估
纳米机器人:停止
提示命令的工作方式与传统聊天类似,允许您提出问题并从 Nano Bot 接收答案。
例子:
Prompt: write a hello world in Ruby
Nano Bot: puts "Hello, world!"
“应用”命令适用于文本选择。您选择一段文本并要求 Nano Bot 执行操作。
例子:
Selected Text: How are you doing?
Prompt: translate to french
Nano Bot: Comment allez-vous ?
“评估”命令会将您当前选择的文本发送到 Nano Bot,无需任何其他说明。
例子:
Selected Text: Hi!
Nano Bot: Hello! How can I assist you today?
要中断流响应或停止等待完整响应,可以使用命令选项板中的“停止”命令。如果您意识到机器人的答案不是您对请求的期望,这会很有用。
执行前面提到的任何命令时,都会出现提示,要求您选择墨盒。默认的 Cartridge 是标准的聊天交互。但是,您可以创建自己的墨盒,该墨盒将自动出现在命令选项板中。
有关卡盒的更多详细信息,请参阅 Nano Bots 规范。你可以在这里找到它。
您可以探索 Nano Bots Marketplace,发现可以为您提供帮助的新墨盒。
您可以通过使用名称default.yml
创建自己的盒来覆盖默认盒:
---元:符号:? 名称:默认 作者:你的名字 版本:1.0.0 许可证:CC0-1.0 描述:一个有用的助手。提供者:id:openai 凭据:地址:ENV/OPENAI_API_ADDRESS访问令牌:ENV/OPENAI_API_KEY 设置:用户:ENV/NANO_BOTS_END_USER模型:gpt-3.5-turbo
没有默认的快捷键,但您可以通过转到“首选项”并选择“按键绑定”来添加自己的快捷键。我们推荐以下内容:
[ {"keys": ["ctrl+b", "ctrl+p"], "command": "nano_bots","args": { "state": "-", "action": "提示", "模式“: “添加” } }, {“键”:[“ctrl+b”,“ctrl+l”],“命令”:“nano_bots”,“args”:{“状态”:“-”,“动作”:“应用”,“模式": "替换", "前缀": "","格式": "[提示]: [输入]" } }, {“keys”:[“ctrl+b”,“ctrl+b”],“命令”:“nano_bots”,“args”:{“状态”:“-”,“动作”:“评估”,“模式” “: “代替” } }, {“键”:[“ctrl+b”,“ctrl+k”],“命令”:“nano_bots”,“args”:{“动作”:“停止”} } ]
action
关键字指的是可用的命令。
mode
是指选择文本时如何传递答案。 add
会将答案添加到所选文本后,而replace
会将其替换为答案。
定义add
时,您可能还需要添加prefix
:
{“键”:[“ctrl+b”,“ctrl+l”], “命令”:“nano_bots”,“args”:{“状态”:“-”,“操作”:“应用”,“模式”:“添加”,“前缀”:“n”,“格式”:“ [提示]:[输入]" } },
使用apply
命令时,可以通过包含format
关键字来自定义提示:
Selected Text: How are you doing?
Prompt: translate to french
{“格式”:“[提示]:[输入]”}
会产生提示:
translate to french: How are you doing?
如果您希望在使用这些命令时跳过选择墨盒的提示,则可以预先定义所需的墨盒:
{“keys”:[“ctrl+b”,“ctrl+b”],“命令”:“nano_bots”,“args”:{“状态”:“-”,“动作”:“评估”,“模式” ": "更换", "墨盒": "-" } }
-
代表默认墨盒。您可以将其替换为系统中任何其他可用的墨盒。
如果您想定义一个不需要任何用户输入或考虑的简单命令,您可以使用以下命令来完成此操作:
{"keys": ["ctrl+b", "ctrl+p"], "command": "nano_bots","args": { "state": "-", "action": "提示", "模式": "添加", "墨盒": "-", "输入": "您好!" } }
如果您希望定义适用于当前选择的命令而不需要任何其他输入,您可以使用:
{“keys”:[“ctrl+b”,“ctrl+b”],“命令”:“nano_bots”,“args”:{“状态”:“-”,“动作”:“评估”,“模式” ": "更换", "墨盒": "-" } }
{“键”:[“ctrl+b”,“ctrl+l”],“命令”:“nano_bots”,“args”:{“状态”:“-”,“动作”:“应用”,“模式” ": "替换", "墨盒": "-", "输入": "翻译为 en-us" } }
默认情况下,与 Nano Bot 的所有交互都是无状态的。但是,如果您希望保留交互历史记录,可以使用状态键:
{“keys”:[“ctrl+b”,“ctrl+p”],“命令”:“nano_bots”,“args”:{“状态”:“0470dfa445f1f11b5eb9b3089c5943c8”,“操作”:“提示”,“模式” “: “添加” } }
每个盒式磁带将保持其自己的隔离状态。有关状态管理的更多信息,请参阅规范。
绝对不是,除非你有意采取行动这样做。如果没有您的明确操作,您正在处理或在编辑器中打开的文件永远不会被上传或共享。
只有您有意采取行动来共享的一小部分文本/代码。您在使用 Prompt 命令时输入的文本会与 Nano Bots Public API 共享,而 Nano Bots Public API 也需要严格与 OpenAI API 共享才能生成响应。如果您使用“评估”或“应用”,您选择的特定文本也将被共享以生成响应。
您特意选择共享的数据将安全地传输 (HTTPS) 到 Nano Bots 公共 API。此公共 API 是开源的,可在此处进行审核。它采用OpenAI API进行数据处理。因此,您选择共享的任何数据也将发送到 OpenAI API,根据其政策,该 API 不会用于模型训练,并且不会保留超过 30 天。
共享数据片段对于生成输出是必要的。您可以选择使用您自己的 Nano Bots API 本地实例。此设置可确保所有交互都在您的计算机本地进行,唯一共享的数据是与您的个人 OpenAI API 共享的。或者,您也可以决定不使用 OpenAI,而是将本地 Nano Bots API 连接到您自己的本地 LLM,例如 FastChat,从而实现完全本地和私密的交互。
对于私人或机密内容/代码,我们建议您或您的组织进行彻底的安全和隐私评估。基于此,您可能会认为 Nano Bots 公共 API 和 OpenAI 的隐私政策就足够了,或者您也可以选择使用您自己的 API 和 LLM 提供商的私有设置。
不会。如果您使用默认的 Nano Bots 公共 API,则不涉及任何费用,但您可能会偶尔遇到速率限制或稳定性问题。如果您决定使用自己的 API 和 LLM 提供商,任何相关费用将取决于您选择的提供商。例如,在本地使用 Nano Bots API 和 OpenAI 将需要付费的 OpenAI 平台帐户。
不,这是一个开源项目,与 OpenAI 没有正式的联系。它旨在与各种 LLM 提供商兼容,其中 OpenAI 是默认提供商。由于 OpenAI 是一家私营公司,我们无法对其服务提供任何保证,并且我们没有任何隶属关系。使用风险自负。
该项目遵循麻省理工学院的许可证。用通俗的语言来说,它的意思是:
该软件按原样提供。这意味着没有任何保证或保证。这包括它的工作效果如何(如果它按您的预期工作)、它是否适合您的目的以及它不会造成任何损害(不侵权)。如果由于该软件而出现问题,无论您是在使用它、更改它还是使用它执行任何其他操作,制造或拥有该软件的人均不承担任何责任。
换句话说,我们对您使用它时发生的情况不做任何承诺或责任。因此,重要的是您要自行承担使用它的风险并决定您对它的信任程度。您是负责人,并对您如何使用它以及使用它可能产生的后果负责。
卸载当前的 Nano Bots 软件包。
在Packages/Nano Bots
中克隆存储库(符号链接不起作用):
克隆 https://github.com/gbaptista/sublime-nano-bots.git “/home/me/.config/sublime-text/Packages/Nano Bots”
要开始在 Nano Bots for Sublime Text 上进行开发,请按照以下步骤操作:
通过运行pip install -r requirements-dev.txt
安装必要的软件包。
通过运行pycodestyle *.py
检查代码的格式。
通过运行pylint *.py
来使用 pylint 分析代码。