更新到 LiteLLM for openai 兼容连接器,可以更轻松地添加对各种模型的支持,现在我们使用单个模型 json 文件进行配置。确保您拥有适当的 API 密钥来使用 Google Gemini AI Studio。 GPT 4o、Sonnet 3.5 支持。
支持新的克劳德模型,并进行了一些调整。
Python 更新至 3.11。我们还添加了对 GPT-4 128k 和 Claude 2.1 + Claude Instant v1.2 的支持。确保相应地更新您的依赖项。
参见:人类/克劳德 2
还更新了一些依赖项(Anthropic、OpenAI、PRAW、Streamlit)
更新视频概述@YouTube
新文章 @ BetterProgramming/Medium:使用 Claude 100k 和 GPT 16k 改变 Reddit 摘要
扩展设置以使用人择模型;还增加了对旧版 OpenAI 指令模型的支持——大多数会产生垃圾输出,但对测试很有用,也就是说,Text Davinci 003 主观上会产生一些最高质量的输出。新的 100k 模型通常可以消耗整个 reddit 线程而无需递归。
不要忘记将 Anthropic API 密钥添加到 .env 文件中。 (ANTHROPIC_API_KEY)
https://www.anthropic.com/index/100k-context-windows
如果您有权访问 API,则现在可以使用更长的上下文窗口。请参阅文档。 https://platform.openai.com/docs/models/gpt-4 在此处注册等候名单:https://openai.com/waitlist/gpt-4
文章@Better Programming/Medium 使用 ChatGPT API 构建 Reddit 线程摘要器
这是一个基于 Python 的 Reddit 线程摘要器,它使用 GPT-3 生成线程评论的摘要。
该脚本用于通过使用 OpenAI API 根据递归摘要提示完成文本块来生成 Reddit 线程摘要。它首先向指定的 Reddit 线程发出请求,提取标题和自我文本,然后查找线程中的所有评论。
然后,这些评论被连接成指定数量标记的组,并通过使用组的文本以及 Reddit 线程的标题和自身文本提示 OpenAI API 来为每个组生成摘要。然后,摘要将保存到当前工作目录的outputs
文件夹中的文件中。
要安装依赖项,您可以使用poetry
:
poetry install
您还需要提供 OpenAI/Reddit/Anthropic API 凭据。创建一个.env
文件并添加以下内容:
OPENAI_ORG_ID = YOUR_ORG_ID
OPENAI_API_KEY = YOUR_API_KEY
REDDIT_CLIENT_ID = YOUR_CLIENT_ID
REDDIT_CLIENT_SECRET = YOUR_CLIENT_SECRET
REDDIT_USERNAME = YOUR_USERNAME
REDDIT_PASSWORD = YOUR_PASSWORD
REDDIT_USER_AGENT = linux:com.youragent.reddit-gpt-summarizer:v1.0.0 (by /u/yourusername)
ANTHROPIC_API_KEY = YOUR_ANTHROPIC_KEY
要安装开发依赖项,请运行:
poetry install --extras dev
该项目使用 pytest 进行测试,使用 mypy 进行类型检查。
要运行测试和类型检查,请使用以下命令:
poetry run pytest
poetry run mypy .
该项目还使用黑色进行代码格式化,使用 pylint 进行 linting。
要格式化代码并检查 linting 错误,请使用以下命令:
poetry run black .
poetry run pylint .
要运行该应用程序,请使用以下命令:
streamlit run app/main.py
这将启动一个 Web 应用程序,允许您输入 Reddit 主题 URL 并生成摘要。该应用程序将根据线程的内容自动生成 GPT-3 提示,并根据这些提示生成摘要。
您可以使用config.py
文件自定义应用程序的行为。可以使用以下配置选项:
ATTACH_DEBUGGER
:是否将调试器附加到应用程序。WAIT_FOR_CLIENT
:是否在启动应用程序之前等待客户端连接。DEFAULT_DEBUG_PORT
:调试器使用的默认端口。DEBUGPY_HOST
:用于调试器的主机。DEFAULT_CHUNK_TOKEN_LENGTH
:评论块的默认长度。DEFAULT_NUMBER_OF_SUMMARIES
:要生成的默认摘要数量。DEFAULT_MAX_TOKEN_LENGTH
:摘要的默认最大长度。LOG_FILE_PATH
:日志文件的路径。LOG_COLORS
:日志的颜色字典。REDDIT_URL
:要汇总的 Reddit 线程的 URL。TODAYS_DATE
:今天的日期。LOG_NAME
:日志文件的名称。APP_TITLE
:应用程序的标题。MAX_BODY_TOKEN_SIZE
:评论正文的最大标记数。DEFAULT_QUERY_TEXT
:用于 GPT-3 提示的默认文本。HELP_TEXT
:当用户将鼠标悬停在帮助图标上时显示的文本。 如果您想为此项目做出贡献,请创建拉取请求。
该项目根据 MIT 许可证获得许可。