🤖webman/ai 发布3.0支持会员及支付功能🤖

walkor

webman/ai 3.0发布,主要提供变现能力

现在购买赠送1个5刀的ApiKey

将支持以下功能

  • 会员功能
  • 支付功能(微信+支付宝 微信支付在需要webman/ai>=3.0.1)
  • UI的一些美化
  • 支持全屏、非全屏
  • 支持前端设置代理
  • 会员列表(管理后台)
  • 订单列表(管理后台)
  • 多apikey设置,自动下线不可用的apikey(管理后台)
  • 角色设置(管理后台)

安装
管理后台和支付功能需要安装webman/admin,请在webman/admin中插件管理页面安装或升级。
会员功能需要在安装用户模块
支付功能需要安装 composer require yansongda/pay:~3.1.0 并重启
支付配置新建 plugin/ai/config/payment.php,参考payment.example.php
套餐设置在 plugin/ai/config/app.php

如果不需要管理后台、会员和支付功能,可以直接下载webman/ai压缩包,覆盖plugin/ai目录升级。

体验地址
https://bla.cn

购买地址
https://www.workerman.net/app/view/ai

样式预览
截图

截图

4377 35 2
35个回答

晚安。

只有按月的吗,可以按提问次数来计费吗
可以包月,也可以购买次数的

  • walkor 2023-08-11

    先出按月的,按次数看需求,如果有很多人需要后面就加上去。

liziyu

  • 暂无评论
镜子

外网服务器求推荐

  • walkor 2023-08-13

    webman/ai不需要外网服务器,本地就可部署

ersic

期待

  • 暂无评论
ersic

问一下老大,官网AI的限流是用redis做的吗,限制IP,能不能简单说说

  • walkor 2023-08-15

    限流是用临时文件做的,为了要保持 webman/ai 无需安装解压即可使用,不会强制依赖redis存储

  • tanhongbin 2023-08-15

    老大你居然限流了,赶紧把 平台的 ai也改成 按照次数付费吧,我觉得比较公平,用你就花钱。

  • walkor 2023-08-15

    已经加了付费功能,当天额度用完会提示

  • tanhongbin 2023-08-15

    这个不错

lingyun

希望能支持窗口模式,电脑屏幕大一点全屏左右列表看着很累

charlescc

大佬,我购买了299,支付成功,回调,提示订单不存在。不知道咋联系

  • walkor 2023-08-15

    刷新试下

  • charlescc 2023-08-16

    可以了。回调提示订单不存在。但是购买页,是可以下载的。

ersic

老大,有个需求,前台自己设置key的地方可以加个代理地址选填吗

z985342160

有新增反爬机制吗。

zhaihongli2023

什么时候可以升级啊

huangchangqiang

大佬 什么时候支持 midjourney?

xiao52

老大,我这购买了怎么提示订单不存在?

liaolong

我的ai付费功能安装不成功,前端不出现v付费字样(后端已安装好用户模块,设置需要登录,免费限制系数为10)。
按上面要求输入支付安装命令 composer require yansongda/pay:~3.1.0 -vvv ,显示结果如下,请大佬看看问题在哪里?

Do not run Composer as root/super user! See https://getcomposer.org/root for details
Continue as root/super user [yes]? yes
Reading ./composer.json (/root/webman/composer.json)
Loading config file ./composer.json (/root/webman/composer.json)
Checked CA file /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem: valid
Executing command (/root/webman): 'git' 'branch' '-a' '--no-color' '--no-abbrev' '-v'
Executing command (/root/webman): git describe --exact-match --tags
Executing command (CWD): git --version
Executing command (/root/webman): git log --pretty="%H" -n1 HEAD
Executing command (/root/webman): hg branch
Executing command (/root/webman): fossil branch list
Executing command (/root/webman): fossil tag list
Executing command (/root/webman): svn info --xml
Failed to initialize global composer: Composer could not find the config file: /root/.config/composer/composer.json

Reading ./composer.lock (/root/webman/composer.lock)
Reading /root/webman/vendor/composer/installed.json
./composer.json has been updated
Reading ./composer.json (/root/webman/composer.json)
Loading config file ./composer.json (/root/webman/composer.json)
Executing command (/root/webman): 'git' 'branch' '-a' '--no-color' '--no-abbrev' '-v'
Executing command (/root/webman): git describe --exact-match --tags
Executing command (/root/webman): git log --pretty="%H" -n1 HEAD
Executing command (/root/webman): hg branch
Executing command (/root/webman): fossil branch list
Executing command (/root/webman): fossil tag list
Executing command (/root/webman): svn info --xml
Failed to initialize global composer: Composer could not find the config file: /root/.config/composer/composer.json

Reading ./composer.lock (/root/webman/composer.lock)
Reading /root/webman/vendor/composer/installed.json
Running composer update yansongda/pay
Loading composer repositories with package information
Reading /root/.cache/composer/repo/https---repo.packagist.org/packages.json from cache
Downloading https://repo.packagist.org/packages.json if modified
[304] https://repo.packagist.org/packages.json
Reading /root/.cache/composer/repo/https---repo.packagist.org/provider-yansongda~pay.json from cache
Downloading https://repo.packagist.org/p2/yansongda/pay.json if modified
[304] https://repo.packagist.org/p2/yansongda/pay.json
Built pool.
Running pool optimizer.
Pool optimizer completed in 0.005 seconds
Found 96 package versions referenced in your dependency graph. 12 (13%) were optimized away.
Updating dependencies
Generating rules
Resolving dependencies through SAT
Looking at all rules.

Dependency resolution completed in 0.000 seconds
Analyzed 84 packages to resolve dependencies
Analyzed 97 rules to resolve dependencies
Nothing to modify in lock file
Installing dependencies from lock file (including require-dev)
Nothing to install, update or remove
Generating autoload files
Reading /root/.cache/composer/repo/https---repo.packagist.org/provider-psr~container.json from cache
Downloading https://repo.packagist.org/p2/psr/container.json if modified
Reading /root/.cache/composer/repo/https---repo.packagist.org/provider-psr~event-dispatcher.json from cache
Downloading https://repo.packagist.org/p2/psr/event-dispatcher.json if modified
Reading /root/.cache/composer/repo/https---repo.packagist.org/provider-psr~http-client.json from cache
Downloading https://repo.packagist.org/p2/psr/http-client.json if modified
Reading /root/.cache/composer/repo/https---repo.packagist.org/provider-psr~http-message.json from cache
Downloading https://repo.packagist.org/p2/psr/http-message.json if modified
Reading /root/.cache/composer/repo/https---repo.packagist.org/provider-psr~log.json from cache
Downloading https://repo.packagist.org/p2/psr/log.json if modified
Reading /root/.cache/composer/repo/https---repo.packagist.org/provider-yansongda~pay.json from cache
Reading /root/.cache/composer/repo/https---repo.packagist.org/provider-yansongda~supports.json from cache
Downloading https://repo.packagist.org/p2/yansongda/supports.json if modified
[304] https://repo.packagist.org/p2/psr/container.json
[304] https://repo.packagist.org/p2/psr/log.json
[304] https://repo.packagist.org/p2/psr/event-dispatcher.json
[304] https://repo.packagist.org/p2/yansongda/supports.json
[304] https://repo.packagist.org/p2/psr/http-client.json
[304] https://repo.packagist.org/p2/psr/http-message.json
No security vulnerability advisories found

  • walkor 2023-08-19

    看起来已经安装成功了,需要配置下plugin/ai/config/payment.php

zhaihongli2023

左侧助手那些怎么去掉呢 默认不要通讯录可以么 默认通用的就可以了

  • walkor 2023-08-19

    手动改下代码吧,plugin/ai/app/view/index/index.html

  • zhaihongli2023 2023-08-19

    改好了,那个开启登陆模式后,直接跳转到登录界面了,能不能改成可以发送消息 然后在消息框里面提示登录呢 大佬 指一条明路呗

  • walkor 2023-08-19

    那就不开启登录,然后在send接口里判断下是否登录

  • walkor 2023-08-19

    session('user') 为空就是未登录

  • zhaihongli2023 2023-08-19

    你写的那个请登录 在哪里写的 看下格式呗

  • zhaihongli2023 2023-08-19

    大佬 登录写出来了 是新界面打开的 怎么实现跟左侧列表点那个用户一样的跳转呢

  • walkor 2023-08-19

    你先不弄,等我改成你说的这种,到时候升级下就好了。大概这两天发一个小版本

  • zhaihongli2023 2023-08-19

    好的大佬,admin后台安装的短信插件设置没法用是为啥呢

  • walkor 2023-08-19

    没看到有用户反馈不可用,如果你那不能用需要自己定位下

lidazui

@walkor 是不是不需要国外服务器部署也可以用啦?

  • walkor 2023-08-21

    不需要国外服务器,本机或者国内服务器都能部署

  • lidazui 2023-08-21

    是不是可以把自己的国外服务器ip直接填写在api_host里?

  • walkor 2023-08-21

    源码里带一个国内用的api_host地址

  • lidazui 2023-08-21

    为啥我的user和ai页面上没有会员的相关信息与按钮啊?

  • walkor 2023-08-22

    会员要配置支付

zhaihongli2023

老大提个建议哈,购买配置可以放到后台去做配置,这样不用改一次就重启一次

katray608

感谢大佬,非常好用
有个小小建议,希望加入重新生成或导出聊天记录等这些功能,会更加锦上添花

z

这个回调地址要填什么,必填-支付宝根证书 路径这个要填哪个

  • walkor 2023-08-21

    截图
    回调地址不填写,根证书参考上图

  • walkor 2023-08-21

    截图
    开发设置点接口加签方式 查看

  • z 2023-08-21

    嗯, 有了。 填的是路径,不是证书里面的内容吗,路径需要可以访问吗, 放public下,还是说可以放跟目录自建一个目录

  • walkor 2023-08-21

    路径,不放在public

  • z 2023-08-21

    base_path('/payment/alipayRootCert.crt'); 这样?

  • z 2023-08-21

    Yansongda\Pay\Exception\InvalidConfigException: Missing Alipay Config -- [app_public_cert_path] in D:\phpstudyPro\WWW\webman\webman\vendor\yansongda\pay\src\Plugin\Alipay\PreparePlugin.php:106
    这个地址是这样填的,一直报这个路径错
    'app_public_cert_path' => base_path().'/payment/appCertPublicKey.crt',
    'app_public_cert_path' => base_path('/payment/appCertPublicKey.crt'),两种都一样,文件名是对的

  • walkor 2023-08-22

    改完配置reload下

mikoozhang

good
截图
代码有点看不清楚~~

  • 暂无评论
hsk99

截图

UML图无法解析

  • walkor 2023-08-23

    用的markdonw-it,它本身好像不带UML解析

zhaihongli2023

截图
老大这俩证书长啥样啊

  • walkor 2023-08-23

    参考 https://www.workerman.net/app/view/ai 开启支付部分

  • zhaihongli2023 2023-08-23

    是不是微信支付还有问题,都填写了 但是一直报错,也没有具体原因

  • zhaihongli2023 2023-08-23

    /app/ai/order/wechat-qr?orderId='+orderId 这个请求

  • walkor 2023-08-23

    微信支付webman/ai 3.0.1才支持

  • zhaihongli2023 2023-08-23

    看能不能兼容一下手机端 微信内打开和非微信内打开支付这种

  • walkor 2023-08-23

    后面会兼容

  • zhaihongli2023 2023-08-23

    老大 我这做内部修改了 手动修改关于微信支付的部分 应该修改哪些文件 我要一升级全部给我覆盖了都

  • walkor 2023-08-23

    plugin/ai/app/controller/OrderController.php
    plugin/ai/app/view/user/vip.html

  • zhaihongli2023 2023-08-23

    支付成功 没反应 状态也没变

  • walkor 2023-08-23

    支付微信或者支付宝会调用你服务器,要保证服务器能被调用,所以不能在本地测试。
    支付宝ip白名要把服务器ip写进去。

  • zhaihongli2023 2023-08-23

    问题找到了 那个支付时间 你不能使用$paidAt = $ciphertext['success_time']; 格式不对 返回的时间是2023-08-23T17:08:53+08:00 这样的

  • walkor 2023-08-23

    截图
    测试可以啊

  • zhaihongli2023 2023-08-23

    你的mysql版本高吧 InnoDB AUTO_INCREMENT=142 DEFAULT CHARSET=utf8mb4 COMMENT='ai订单'; paid_at datetime DEFAULT NULL COMMENT '支付时间',

  • zhaihongli2023 2023-08-23

    我是的mysql版本5.7 之前看帖子那个sql是导入不进去的 我是转换之后才好的 我觉得data("Y-m-d H:i:s")最稳妥一些吧,毕竟我这里遇到这个问题了

  • walkor 2023-08-23

    好的,感谢反馈

  • z 2023-08-23

    我用的是mysql5.7,时间显示正常,但是没有显示支付方式,点编辑里也没有

  • zhaihongli2023 2023-08-23

    你可以改一下代码 给他显示出来就行了 简单

  • wocall 2023-08-31

    @walkor 我难道没找到正确的app_secret_cert?它在哪里?

  • walkor 2023-09-01

    截图

  • wocall 2023-09-01

    这个文件不是要放到服务器里么?
    // 必填-应用私钥 字符串或路径
    'app_secret_cert' => ''这个地方是要填写这个文件的内容么?

    另外,老大,送我的两个key,第一个key没用500次就失效了,第二个key添加进去就直接提示「已作废」
    :((((((((

  • walkor 2023-09-01

    稍等给你写个教程

  • wocall 2023-09-01

    太感谢了

z

截图 已支付和未支付的状态貌似倒过来了,上面查询已支付,显示的是未支付的, 编辑该状态未支付,显示却是已支付

  • walkor 2023-08-23

    嗯,状态弄反了,下个小版本修复下

zhaihongli2023

截图老大 这里的图标是用的什么图标库 在哪里找

zhaihongli2023

截图
老大 这种打算怎么用 选择哪个就是哪个对话吗

  • walkor 2023-08-26

    应用市场,比如有1000个角色,不可能都放在左边对话栏,那么就放市场里,需要的就安装

  • zhaihongli2023 2023-08-26

    能不能做成点击某个直接进入聊天

  • zhaihongli2023 2023-08-26

    这个什么时候发布

  • walkor 2023-08-26

    下周

  • z 2023-08-27

    对对, 加个收藏按钮,收藏的显示到对话栏,直接点进去的就不显示在左边

  • wocall 2023-08-27

    这么多功能,哪里下?:)

wocall

@walkor
我服务器是centos 8.4,安装支付扩展要求php7.4

我这服务器装不上php7.4呀,帮指导指导呗

  • walkor 2023-08-27

    workerman官方有提供静态php
    解压后就一个php可执行文件,启动时运行 ./php start.php start -d 就行,绿色环保,不用搭建php环境

  • wocall 2023-08-27

    是不是直接把它放到webman下就行?影响我这破服务器其它基于php的应用么?

  • walkor 2023-08-27

    放webman下就行,不影响其它php的应用

ersic

老大同步出个二进制打包版吧,很多人只是想部署一下,看你在评论教他们装 PHP ,太浪费时间精力了😂

  • walkor 2023-08-28

    二进制版本就只能聊天,没办法做支付会员这些了

  • ersic 2023-08-28

    也是

  • wocall 2023-08-28

    时间就是用来浪费的,就把折腾当作晒太阳咯。

katray608

大佬你好,我新手问个很蠢的问题,AI返回的数据

data: {"id":"chatcmpl-7sjUyJQP48s5Z3QKWfFgtU5GeKdAd","object":"chat.completion.chunk","created":1693278964,"model":"gpt-3.5-turbo-16k-0613","choices":[{"index":0,"delta":{"role":"assistant","content":""},"finish_reason":null}]}

data: {"id":"chatcmpl-7sjUyJQP48s5Z3QKWfFgtU5GeKdAd","object":"chat.completion.chunk","created":1693278964,"model":"gpt-3.5-turbo-16k-0613","choices":[{"index":0,"delta":{"content":"谢"},"finish_reason":null}]}

data: {"id":"chatcmpl-7sjUyJQP48s5Z3QKWfFgtU5GeKdAd","object":"chat.completion.chunk","created":1693278964,"model":"gpt-3.5-turbo-16k-0613","choices":[{"index":0,"delta":{"content":"谢"},"finish_reason":null}]}

data: {"id":"chatcmpl-7sjUyJQP48s5Z3QKWfFgtU5GeKdAd","object":"chat.completion.chunk","created":1693278964,"model":"gpt-3.5-turbo-16k-0613","choices":[{"index":0,"delta":{"content":"!"},"finish_reason":null}]}

我想把其中的 "id":"chatcmpl-7sjUyJQP48s5Z3QKWfFgtU5GeKdAd" 改成我自己的固定字符串,然后发送给客户端,其他不变,这个需要怎么改

  • walkor 2023-08-29

    改这个没什么用吧。替换流程比较复杂,需要你熟悉http chunked

zhaihongli2023

老大 升级的数据空能搞一份吗

  • 暂无评论
zhaihongli2023

截图 还有如何改成点击某个分类直接进入聊天呢 ,如果是手机端的话 一出来是个列表 觉得不太方便,我把左侧列表隐藏了,想通过应用点击进行切换到聊天如何修改呢 老大

zhaihongli2023

角色创建有没有特别的要求?随便写吗

lingyun

问一下,有遇到升级之后偶尔可以回答,偶尔不能回答的吗?

  • lingyun 2023-09-03

    api_host用的内置的,也用了自己搭建的,都试了,都是偶尔可以

  • lingyun 2023-09-03

    webman重启后,可以正常回复2轮,然后就不能回复了,请求全是到60秒时返回失败,画图不受影响,作者解答一下?

  • walkor 2023-09-03

    没有人反馈过类似问题。有没有动过源码?发下测试地址

  • lingyun 2023-09-03

    没动源码,就改了html代码,删除重装很多次了,都不行,我用手机测试也是只能前两次能回复,第三次就回复不了。地址:https://ai.jide.ink/

  • lingyun 2023-09-03

    目前是用的https://proxy.jey.cn代理地址

  • walkor 2023-09-03

    安全组把8787端口打开,不经过nginx直接访问8787端口看下是否有问题

  • lingyun 2023-09-03

    也不行,回答了几条后,返回了这个信息:connect proxy.jey.cn:443 fail after 132.312 seconds

  • walkor 2023-09-03

    感觉是你的服务器网络有点问题,连接代理服务器超时

  • lingyun 2023-09-03

    应该是网络问题了
    ping proxy.jey.cn
    PING proxy.jey.cn (43.159.128.208) 56(84) bytes of data.
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=1 ttl=45 time=193 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=3 ttl=45 time=211 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=5 ttl=45 time=221 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=6 ttl=45 time=195 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=7 ttl=45 time=216 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=8 ttl=45 time=205 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=9 ttl=45 time=216 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=10 ttl=45 time=202 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=11 ttl=45 time=225 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=12 ttl=45 time=216 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=13 ttl=45 time=209 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=14 ttl=45 time=206 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=16 ttl=45 time=226 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=17 ttl=45 time=225 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=18 ttl=45 time=220 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=19 ttl=45 time=230 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=20 ttl=45 time=207 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=21 ttl=45 time=206 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=23 ttl=45 time=206 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=24 ttl=45 time=223 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=25 ttl=45 time=213 ms
    64 bytes from 43.159.128.208 (43.159.128.208): icmp_seq=26 ttl=45 time=230 ms
    ^C
    --- proxy.jey.cn ping statistics ---
    26 packets transmitted, 22 received, 15.3846% packet loss, time 25179ms
    rtt min/avg/max/mdev = 192.678/213.681/230.046/10.360 ms

z

截图
问下这个效果,我要怎么修改这个js,能实现跟添加和删除角色一样的效果,页面图标直接变化
这是html
截图 我用v-if="role.isfav===1"判断页面要手动刷新才会更新,但是用下面这个isFavourite是可以,但是会跟installed冲突, 我觉得是 !role.deleted这个的问题,要怎么重新再定义一个呢,重新定义的会直接没反应
installed(roleId) {
return this.installedRoles.find((role) => !role.deleted && role.roleId === roleId);
},
isFavourite(roleId) {
return this.installedRoles.find((role) => !role.deleted && role.roleId === roleId);
},

  • walkor 2023-09-03

    你参考你截图里上半部分代码的实现就好了啊,我没有你的代码,没办法给你调试。

  • z 2023-09-03

    installed(roleId) {
    return this.installedRoles.find((role) => !role.deleted && role.roleId === roleId);
    }, 按上面的修改,然后这个不知道要怎么写,role.deleted 原文件里没找到定义的,我想者加个role.isfav,但是按钮就不能用了

  • walkor 2023-09-03

    role.deleted 可以删掉,不用管

  • z 2023-09-03

    <div v-if="isFavourite(role.roleId)" title="已收藏" @click="unFavourite(role.roleId)" class="favourited">

    isFavourite(roleId) {
    return this.installedRoles.find((role) => role.roleId === roleId);
    },
    不加那个role.deleted,按钮点击图片没变化,但是数据库是更新了,刷新图标也不会变

TM

Yansongda\Pay\Exception\InvalidConfigException: Parse [mch_public_cert_path] 对接支付微信一直提示路径错误但是路径我打开是可以获取到文件的,还有支付宝对接的是当面付功能吗?

Dalong

后台能直接更新吗

  • 暂无评论
xiaopi

老哥我使用apt安装的php8.1-cli正常,但是使用官网提供的静态php8.1的时候,就ai就无法正常响应,提示:
stream_socket_client(): php_network_getaddresses: getaddrinfo for ai.fakeopen.com failed: Name does not resolve 的错误
静态版本:php-8.1.22-static-bin-x86_64.tar.gz

请问这是配置的问题么?

截图

  • 暂无评论
×
🔝