Repolode
Mirascope

Mirascope/mirascope

用统一接口调用各家前沿大模型的 Python 与 TypeScript 工具包,支持装饰器式调用、结构化输出和工具调用。

Star
1,535
Fork
153
未关闭 Issue
24
最近提交
前天

这是什么?

Mirascope 是一个用于在 Python 和 TypeScript 中调用大语言模型的库。它不是带有大量自有抽象的重型框架,而是提供统一接口调用各家前沿 LLM,切换模型厂商通常只需修改模型标识字符串。

核心用法是装饰器:用模型标识(如 anthropic/claude-sonnet-4-5)装饰一个返回提示词的函数,调用后得到响应对象。传入 format 参数可以把输出解析为 Pydantic 模型;用装饰器定义的工具可以被执行并回填到对话中,从而构建简单的智能体循环。

仓库采用 monorepo 结构,包含 Python 与 TypeScript 两套实现、各自的示例、文档网站以及统一的跨语言文档。

核心功能

  • 01通过统一的模型标识格式调用多家 LLM 厂商。
  • 02用装饰器把 Python 函数定义为提示词。
  • 03通过 format 参数将模型输出解析为 Pydantic 模型。
  • 04将装饰后的函数转为工具,并执行工具调用循环。
  • 05提供与 Python 包并行的 TypeScript 实现。

适用场景

  • 在 Python 项目中实现需要结构化 JSON 输出的 LLM 功能。
  • 不引入大型框架,编写一个小型的工具调用智能体。
  • 在不改动调用代码的前提下切换不同的模型厂商。
  • 在 Python 或 TypeScript 项目中快速原型化 LLM 调用。

快速上手

  1. 1

    使用 uv 安装 Mirascope

    uv add "mirascope[all]"
  2. 2

    使用 @llm.call 装饰器调用大模型并打印结果

使用前须知

  • 调用模型需要模型提供商的 API 密钥。

收录于专题

标签

常见问题

mirascope 是什么?
用统一接口调用各家前沿大模型的 Python 与 TypeScript 工具包,支持装饰器式调用、结构化输出和工具调用。 Mirascope 是一个用于在 Python 和 TypeScript 中调用大语言模型的库。它不是带有大量自有抽象的重型框架,而是提供统一接口调用各家前沿 LLM,切换模型厂商通常只需修改模型标识字符串。
mirascope 可以免费使用吗?用的什么许可证?
mirascope 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
mirascope 还在维护吗?
活跃维护中。mirascope 最近一次提交是在 2026年11月5日。
mirascope 适合用来做什么?
在 Python 项目中实现需要结构化 JSON 输出的 LLM 功能。 不引入大型框架,编写一个小型的工具调用智能体。 在不改动调用代码的前提下切换不同的模型厂商。 在 Python 或 TypeScript 项目中快速原型化 LLM 调用。
mirascope 怎么安装和运行?
使用 uv 安装 Mirascope: uv add "mirascope[all]" 使用 @llm.call 装饰器调用大模型并打印结果
在哪里获取 mirascope?
源代码和安装说明在 GitHub 上:https://github.com/Mirascope/mirascope

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目