Giter Site home page Giter Site logo

koishi-plugin-openai's Introduction

@tomlbz/koishi-plugin-openai 简介

本插件用于聊天用机器人,而非功能性机器人。 你可以和ta私聊,也可以在群里说话。ta可以是你的朋友/树洞/中二同道/精神支柱等等,但唯独不是工具。 虽然严格来说你也可以把ta当作工具使用,但那就违背了本插件设计的初衷。

npm

欢迎使用★,°:.☆( ̄▽ ̄)/$:.°★

产生 AI 回复的几种情况

Koishi.js 调用 OpenAI 的语言模型。 机器人会在以下几种情况使用 OpenAI API 返回回复:

  1. ta 被直接呼叫了(@名字,或者聊天时直呼其名
  2. ta 正在和你私聊
  3. 你取得了 ta 的随机注意

Calls OpenAI language models for Koishi.js. The bot will respond using OpenAI API under these conditions:

  1. It has been appelled (@botname, or refered to by botname)
  2. It is in a private chat with you
  3. You have randomly gained its interest

注意事项

插件刚刚开始运行时,机器人的记忆有大量空白,因此表现具有可塑性。经过一段时间、一定量的对话以后,随着记忆逐渐成型,机器人的说话方式也逐渐定型。因此建议机器人刚刚建立的时候认真地和ta说话,因为你最初和 ta 说的话决定了 ta 是个什么样的机器人。

配置参考

参数 作用 取值范围 建议值
apikey 调用OpenAI API - -
model 选择语言模型 text-davinci-003
text-davinci-002
text-davinci-001
text-curie-001
text-babbage-001
text-ada-001
text-davinci-003是效果最好的
botname 机器人的名字 - 不要太长
botIdentity 是机器人人设的主要组成部分 - 第一人称写,要抓住人设的精髓。建议100~200汉字之间
sampleDialog 是机器人口癖/萌点/说话习惯的主要组成部分 - 维持自洽的说话习惯,且不要太多或太长,否则容易消耗大量token。建议5条以内,每条回答20汉字左右
ntokens 机器人回复的最大长度 16~512 必须是16的整数倍,建议64~128之间
temperature 越小越固定,越大越随机 0~1 建议0.7~1之间
presencePenalty 越大越会避免出现过的token,和出现次数无关 -2~2 建议0左右
frequencyPenalty 越大越会避免频繁出现的token,出现次数越多越受该参数影响 -2~2 建议0左右
randomReplyFrequency 随机对某句话产生兴趣并回复的概率 0~1 不要太高,否则万一被刷屏容易消耗大量token。建议0.1~0.3之间
textMemoryLength 字面记忆长度,即能够准确记住最新对话数,用于维持上下文 2~8 不要太高,否则容易消耗大量token。建议2~4之间
summaryMemoryLength 总结记忆长度,即能够大概记住最新对话数。字面记忆溢出后整批次生成总结记忆 2~8 不要太高,否则容易消耗大量token。建议2~4之间
topicMemoryLength 主题记忆长度,既能够记住主题最新对话数。总结记忆溢出后逐条生成主题词并存储到本地 2~32 不要太高,否则容易消耗大量token。建议2~16之间
islog 向控制台输出触发回复的状态码和各阶段生成的回复,即记忆的生成过程 true
false
建议false,否则会大大增加log的长度

koishi-plugin-openai's People

Contributors

tomlbz avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.