GPT应用_FastGPT
1 功能
1.1 整体功能,想解决什么问题
官方说明:FastGPT 是一个基于 LLM
大语言模型的知识库问答系统,提供开箱即用的数据处理、模型调用等能力。同时可以通过
Flow 可视化进行工作流编排,从而实现复杂的问答场景!
个人体会:在不用编程的情况下,快速建立简单的本地知识库。
1.2
当前解决了什么问题,哪些问题解决不了
作者团队可能是觉得大模型本身太单薄了,希望通过结合其它工具,做一个中间层的方案,用大模型解决更多问题。
向下接入了多个大模型:GPT、Claude、Spark、ChatGLM 等;向上除了提供
很好用的 Web 工具,还提供了类似 OpenAI 的 API
供其它程序接入其功能,如:微信,飞书……;针对本地知识库,实现了数据的解析,存储,问答功能,并做了一些优化(评价本地知识库效果是一个非常复杂的问题,不在此讨论)。
提供了工作流
Flow,个人感觉对于想开箱即用的人来说有些复杂;对于深度使用者略显单薄。
计算 Embedding 以及答案的合成都需要连网使用。
1.3
提供哪些功能点,其中哪些是刚需
基本的与大模型聊天问答功能
本地知识库支持, ...
项目包管理工具_poetry
1 介绍
Poetry 是一个用于 Python
项目的包管理工具,它相对于传统的 pip 和 requirements.txt
的优势在于:使得项目依赖管理更加方便,且结合了更多新工具,还提供命令行进一步配置。
当在同一系统或在同一个 docker 中,使用多个 Python
程序时,可能由于工具链冲突无法同时安装,poetry
将每个项目所需要的资源都安装在它自己的虚拟环境中,很好地解决了冲突问题。
使用此方法,可以把库挂在系统之外,也不需要总是重打 docker image
了。
2 用法
2.1 配置文件
设置文件是:pyproject.toml,其中包含包及对应版本,可配置选项等等。
2.2 安装 python 包
Poetry 默认会将 Python
包安装在项目的虚拟环境中,而虚拟环境通常会创建在项目根目录的.venv
文件夹内。
查看安装信息:
1$ poetry env info
安装包
1$ peotry install
openstack插件
1 OpenStack
1.1 功能和原理
OpenStack
是一组可用于扩展和增强的云计算平台功能的组件或模块的集合。包括计算、存储、网络、认证、镜像等。具有高度的可扩展性、灵活性和定制性,广泛应用于公有云、私有云、混合云等各种场景。
OpenStack
可以在任何地方快速部署和管理基础架构,而无需依赖云服务提供商。OpenStack
模块被设计为可插拔的插件。
1.2 架构
用户层:用户可以通过各种方式访问 OpenStack 云环境,如 Web
界面、API、CLI 等。
应用层:应用层是 OpenStack
云环境中运行的应用程序和服务,例如虚拟机、存储、网络、数据库等。
控制层:控制层是 OpenStack
云环境中的核心组件,用于管理和协调应用层的资源。
1.3 我的理解
(不一定对)
OpenStack
提供了一个框架,来构建云服务,包含整个系统的组织架构,设计各个组件之间的通讯协议,整体的控制管理等等。
2 插件
2.1 功能
扩展功能通常被设计为可插拔的组件,允许用户根据其需求选择性地添加或拓展功能。
2.2 语言
OpenStack 生态系统中 Python ...
论文阅读_反思模型_Reflexion
123456英文名称: Reflexion: Language Agents with Verbal Reinforcement Learning中文名称: 反思:具有言语强化学习的语言智能体文章: http://arxiv.org/abs/2303.11366代码: https://github.com/noahshinn/reflexion作者: Noah Shinn (Northeastern University)日期: 2023-05-20 v1
1 读后感
论文提出了一种强化学习方法。传统的调优主要是通过训练调整网络参数,而文中提出的方法则是“分析”错误,形成反思的“文字”并保存,在之后的决策中,将其作为上下文以帮助决策。
它利用大模型及其周边方法构造了角色的行为、对结果的评价、当不能达成目标时,利用大模型来反思执行过程中具体哪一步出了问题,并将其作为反思存储。这样就构造了基于当前环境的短期存储,和基于反思的长期存储,结合二者使模型在未来做出更好的决策。
可将其视为把之前在棋类游戏中的强化学习扩展到了角色扮演游戏之中。之前的虚拟世界是棋盘,而现在的智能体置身于一个游戏世界 ...
GPT应用_ChatGPT-Next-Web
1 用后感
这个工具,我也是用了好长时间,就是感觉如果不点亮一颗星,自己就不是人了的那种。
一开始在国内用 ChatGPT
非常麻烦,就买了一个套壳的服务,他使用的界面就是
ChatGPT-Next-Web,我和朋友们都觉得这个界面是真心好看真心好用。
项目地址:https://github.com/Yidadaa/ChatGPT-Next-Web/
2 使用方法
1234567docker pull yidadaa/chatgpt-next-webdocker run -d -p 3000:3000 \ -e OPENAI_API_KEY=sk-xxxx \ -e CODE=页面访问密码 \ --net=host \ -e PROXY_URL=http://127.0.0.1:7890 \ yidadaa/chatgpt-next-web
image 大小只有 198M,非常完美的一键部署。
3 功能
3.1
整体功能,核心是想解决什么问题
通过它能很好地解决国内使用 ChatGPT
的问题;比如我买一个或者搭一个服务,我这边解决了科学上网和费用的问题;朋友、同 ...
GPT应用_WeChatMsg_下载微信聊天记录
1 方法
下载软件的 release 版本 exe
https://github.com/LC044/WeChatMsg
把 Windows 端微信更新到最新版本
将手机聊天记录迁移到电脑
手机微信 ->我的 ->设置 ->聊天 ->聊天记录迁移与备份
->迁移
如果电脑端使用虚拟机,注意千万用桥接网络,不要用
NAT,否则报错:不在同一网络无法迁移;另外,如果一次选择太多内容,也可能出现该报错,分几次迁移就好了。
使用 WeChatMsg 导出
运行 exe,第一次运行时,先解密
2 使用感受
尽管界面目前还不是很完美,但是可用。因为开源,我们可以选择其中的一部分来运行,可以拆开用,可以调。
其核心技术是从微信数据存储目录中提取信息,另外使用 Python Qt
实现了用户界面。
3 参考
解决微信手机与电脑在同一网络却无法互联传输的问题
GPT应用_chatgpt-on-wechat
1 用后感
简单地说,chatgpt-on-wechat 是把 ChatGPT
做成一个微信的机器人好友。项目主要是 Python
编写的,所以上手很快;一键部署也很简单,半个小时以内就能搞定。
项目地址:https://github.com/zhayujie/chatgpt-on-wechat
2 功能
2.1
整体功能,核心是想解决什么问题
核心功能是把大模型做成了微信中的聊天机器人。从底层看,它支持多个大模型:GPT-3.5,
GPT-4, claude, 文心一言,
讯飞星火等;从上层看,它支持多种终端,如个人微信、微信公众号、企业微信、飞书等。
2.2
当前解决了什么问题,哪些问题解决不了
我觉得它解决了 LLM 接入微信 90%
以上的问题,作为独立软件的完整性很好;同时可作为二创的完美
baseline。
2.3
提供哪些功能点,其中哪些是刚需
整体代码和功能分为两部分:接入模型和接入终端。得用终端的接入,我们可以通过微信提供很多服务,不仅限于大模型。接模型这块做得也比较全,包含了图像和语音的支持,而且支持不同公司模型和对工具的调用。
尽管可选模型很多,终端支持也不少;但 ...
计量token数
1234import tiktokenenc = tiktoken.encoding_for_model("gpt-4")print(len(enc.encode("你好呀")))print(len(enc.encode("hello world")))
Redis远程字典服务
1 介绍
Redis(Remote Dictionary
Server)是一个开源的内存数据存储系统,可以用作数据库、缓存和消息中间件。它支持多种数据结构,包括字符串(strings)、哈希表(hashes)、列表(lists)、集合(sets)、有序集合(sorted
sets)等。
2 使用场景
相对于使用数据库,它读取更方便,时间更短
相对于存储在硬盘上,它可供不同机器上的不同客户端读取。
3 使用方法
3.1 安装运行
12$ docker pull redis$ docker run --rm -d --net host redis
默认端口是 6379
3.2 Python 客户端
12345678910111213import redisredis_client = redis.StrictRedis(host='localhost', port=6379, decode_responses=True)# 尝试从缓存中获取结果cached_result = redis_client.get(f'test:01')if cache ...
gitbook制作电子书
1 引言
GitBook
是一个开源的文档编辑和托管平台,用于创建和维护文档、手册和电子书。它基于
Markdown 和 Git 技术,帮助用户方便地编写、编辑和发布文档。
GitBook 支持将文档输出为多种格式,包括网页、PDF、ePub
等,适用于不同的阅读和分享场景。
GitBook 还提供了团队协作的功能,可以方便多人共同编辑和维护文档。
可以将其部署在 gitbook
平台(https://legacy.gitbook.com/),由于需要科学上网,本文不做详细介绍,如果需要,请见最后的参考部分;也可以部署在本地或者自己的网站上。
从功能角度,可以把 gitbook 看作网页版的 obsidian 或者 hexo。gitbook
工具实现前端,用户只需要关心文档的内容,遵循 gitbook
定义的规范,然后使用 gitbook 提供的命令行工具即可。
从逻辑角度看,它以主题为中心,可以把一个系列的文章梳理集中在同一主题之下,更有章法,适合用来写书或者手册。
利用 gitbook,很容易将一堆文档(比如团队 markdown
文档,培训文档)生成类似 wiki
的网页展示,风 ...