tidyverse/ellmer
Call LLM APIs from R
解决的问题
ellmer 为将大型语言模型(LLMs)集成到 R 编程语言中提供了一个统一且易于使用的接口。它消除了管理多个不同 API 提供商和认证方法的复杂性,使 R 用户无需重写代码即可在不同云提供商的模型或本地 LLM 之间自由切换。
工作原理
该包使用带有状态的 R6 对象来管理对话。用户通过特定于提供者的函数(例如 chat_openai() 或 chat_ollama())创建聊天对象,该对象可在多次查询之间保持对话历史(上下文)。支持多种交互模式:用于直接通信的交互式聊天控制台、用于脚本交互的程序化方法调用,以及通过 content_image_file() 和 content_image_url() 支持图像等多模态输入。
适用人群
适用于希望在 R 环境中利用 LLM 进行数据分析、代码生成或应用开发的 R 用户、数据科学家和研究人员。
主要亮点
- 广泛的提供者支持:支持众多官方提供者(Anthropic、OpenAI、Google、AWS Bedrock、Azure OpenAI、Databricks、Snowflake)以及社区支持的提供者(Groq、Mistral、Hugging Face 等)。
- 灵活的交互方式:提供实时交互式控制台和程序化访问两种方式。
- 高级 LLM 功能:实现流式输出、工具/函数调用和结构化数据提取。
- 无缝认证:自动检测主要云提供商的 OAuth 或 IAM 基础凭证。
- 本地 LLM 集成:与 Ollama 集成,可在本地运行模型,确保数据隐私且零成本。
相关
- 项目
- 项目
- 项目
- 项目
- 项目