能力标签
LmDotnet工具
🛠
AI工具

LmDotnet工具

基于 C# · 开源免费,本地部署,数据完全自主可控
英文名:LmDotnetTools
⭐ 10 Stars 🍴 2 Forks 💻 C# 📄 MIT 🏷 AI 8.0分
8.0AI 综合评分
LLMC#AI工具
✦ AI Skill Hub 推荐

经 AI Skill Hub 精选评估,LmDotnet工具 获评「强烈推荐」。这款AI工具在功能完整性、社区活跃度和易用性方面表现出色,AI 评分 8.0 分,适合有一定技术背景的用户使用。

📚 深度解析

LmDotnet工具 是一款基于 C# 的开源工具,在 GitHub 上收获 0k+ Star,是LLM、C#、AI工具领域中的优质开源项目。开源工具的最大优势在于代码完全透明,你可以审计每一行代码的安全性,也可以根据自身需求进行二次开发和定制。

**为什么要使用开源工具而非商业 SaaS?**
对于个人开发者和有隐私需求的用户,本地部署的开源工具意味着数据不离本机,不受第三方服务商的数据政策约束。同时,开源工具通常没有使用次数限制和月度费用,一次安装即可长期使用,对于高频使用场景的总拥有成本(TCO)远低于订阅制商业工具。

**安装与环境准备**
LmDotnet工具 依赖 C# 运行环境。建议通过 pyenv(Python)或 nvm(Node.js)管理 C# 版本,避免全局环境污染。对于新手用户,推荐先创建虚拟环境(python -m venv venv && source venv/bin/activate),再安装依赖,这样即使出现问题也可以随时删除虚拟环境重新开始,不影响系统稳定性。

**社区与维护**
GitHub Issue 和 Discussion 是获取帮助的最快渠道。在提问前建议先检查 Closed Issues(已关闭的问题),大多数常见问题都已有解答。遇到 Bug 时,提供 pip list 的输出、完整错误堆栈和最小可复现示例,能显著提高开发者响应速度。AI Skill Hub 将持续追踪 LmDotnet工具 的版本更新,及时通知重要功能变化。

📋 工具概览

LmDotnet工具 是一款基于 C# 开发的开源工具,专注于 LLM、C#、AI工具 等核心功能。作为 GitHub 开源项目,它拥有活跃的社区支持和持续的版本迭代,代码完全透明可审计,支持本地部署以保护数据隐私。无论是个人使用还是集成到企业工作流,都能提供稳定可靠的解决方案。

GitHub Stars
⭐ 10
开发语言
C#
支持平台
Windows / macOS / Linux
维护状态
轻量级项目,按需更新
开源协议
MIT
AI 综合评分
8.0 分
工具类型
AI工具
Forks
2

📖 中文文档

以下内容由 AI Skill Hub 根据项目信息自动整理,如需查看完整原始文档请访问底部「原始来源」。

LmDotnet工具 是一款基于 C# 开发的开源工具,专注于 LLM、C#、AI工具 等核心功能。作为 GitHub 开源项目,它拥有活跃的社区支持和持续的版本迭代,代码完全透明可审计,支持本地部署以保护数据隐私。无论是个人使用还是集成到企业工作流,都能提供稳定可靠的解决方案。

📌 核心特色
  • 开源免费,支持本地部署,数据完全自主可控
  • 活跃的 GitHub 开源社区,持续迭代更新
  • 提供详细文档和使用示例,新手友好
  • 支持自定义配置,灵活适配不同使用环境
  • 可作为基础组件集成进现有技术栈或进行二次开发
🎯 主要使用场景
  • 本地部署运行,保护数据隐私,满足合规要求
  • 自定义集成到现有系统,扩展技术栈能力
  • 作为开源基础组件进行商业化二次开发
以下安装命令基于项目开发语言和类型自动生成,实际以官方 README 为准。
安装命令
# 克隆仓库
git clone https://github.com/achieveai/LmDotnetTools
cd LmDotnetTools

# 查看安装说明
cat README.md

# 按 README 完成环境依赖安装后即可使用
📋 安装步骤说明
  1. 访问 GitHub 仓库页面
  2. 按照 README 文档完成依赖安装
  3. 根据系统环境完成初始化配置
  4. 参考官方示例或文档开始使用
  5. 遇到问题可在 GitHub Issues 中查找解答
以下用法示例由 AI Skill Hub 整理,涵盖最常见的使用场景。
常用命令 / 代码示例
# 查看帮助
lmdotnettools --help

# 基本运行
lmdotnettools [options] <input>

# 详细使用说明请查阅文档
# https://github.com/achieveai/LmDotnetTools
以下配置示例基于典型使用场景生成,具体参数请参照官方文档调整。
配置示例
# lmdotnettools 配置说明
# 查看配置选项
lmdotnettools --config-example > config.yml

# 常见配置项
# output_dir: ./output
# log_level: info
# workers: 4

# 环境变量(覆盖配置文件)
export LMDOTNETTOOLS_CONFIG="/path/to/config.yml"
📑 README 深度解析 真实文档 完整度 74/100 查看 GitHub 原文 →
以下内容由系统直接从 GitHub README 解析整理,保留代码块、表格与列表结构。

Features

  • Multi-Provider Support: Unified interface for OpenAI, Anthropic, OpenRouter, and more
  • Streaming & Synchronous: Support for both streaming and traditional request/response patterns
  • Middleware Pipeline: Extensible middleware for logging, caching, function calls, and usage tracking
  • Type Safety: Strongly-typed models and responses
  • Performance Optimized: Built for high-throughput production scenarios
  • Comprehensive Testing: Extensive test coverage with mocking utilities

Key Features

  • Automatic Integration: Seamlessly activated when using OpenRouter as provider
  • Inline Usage Preferred: Uses usage data directly from API responses when available
  • Intelligent Fallback: Falls back to generation endpoint lookup when needed
  • Performance Optimized: In-memory caching with configurable TTL
  • Zero Configuration: Works out-of-the-box with sensible defaults
  • Comprehensive Logging: Structured logging for monitoring and debugging

Advanced Features

Dependency Injection

// In Program.cs or Startup.cs
services.AddLmDotnet(configuration);
services.ValidateOpenRouterUsageConfiguration(configuration);

Installation

dotnet add package AchieveAi.LmDotnetTools.LmCore
dotnet add package AchieveAi.LmDotnetTools.OpenAIProvider
dotnet add package AchieveAi.LmDotnetTools.AnthropicProvider

Quick Setup

```bash

Quick Start

Basic Usage

using AchieveAi.LmDotnetTools.LmCore.Agents;
using AchieveAi.LmDotnetTools.LmCore.Messages;
using AchieveAi.LmDotnetTools.OpenAIProvider.Agents;

// Create an agent
var agent = new OpenClientAgent("MyAgent", openClient);

// Send a message
var messages = new[] { new TextMessage { Role = Role.User, Text = "Hello!" } };
var response = await agent.GenerateReplyAsync(messages);

OpenRouter Usage Tracking

LmDotnet includes comprehensive usage tracking for OpenRouter, providing automatic token and cost monitoring.

Environment variables

export ENABLE_USAGE_MIDDLEWARE=true export OPENROUTER_API_KEY=sk-or-your-api-key-here export USAGE_CACHE_TTL_SEC=300

csharp // Usage data automatically provided in dedicated UsageMessage var options = new GenerateReplyOptions { ModelId = "openai/gpt-4" }; var messages = await agent.GenerateReplyAsync(userMessages, options);

// Access usage information from UsageMessage var usageMessage = messages.OfType<UsageMessage>().LastOrDefault(); if (usageMessage != null) { var usage = usageMessage.Usage; Console.WriteLine($"Tokens: {usage.TotalTokens}, Cost: ${usage.TotalCost:F4}"); } ```

Configuration

Environment Variables

VariableDefaultDescription
ENABLE_USAGE_MIDDLEWAREtrueEnable OpenRouter usage tracking
OPENROUTER_API_KEY-OpenRouter API key (required for usage tracking)
USAGE_CACHE_TTL_SEC300Usage cache TTL in seconds
ENABLE_INLINE_USAGEtruePrefer inline usage over fallback

LmDotnet - Large Language Model SDK for .NET

LmDotnet is a comprehensive .NET SDK for working with large language models (LLMs) from multiple providers including OpenAI, Anthropic, and OpenRouter.

Middleware Pipeline

// Custom middleware for logging, caching, etc.
public class CustomMiddleware : IStreamingMiddleware
{
    public async Task<IAsyncEnumerable<IMessage>> InvokeStreamingAsync(
        MiddlewareContext context, IStreamingAgent agent, CancellationToken cancellationToken)
    {
        // Pre-processing
        yield return await agent.GenerateReplyStreamingAsync(context.Messages, context.Options, cancellationToken);
        // Post-processing
    }
}
🇨🇳 中文文档镜像 AI 翻译 2026-06-21
英文原文章节由系统翻译为中文摘要,便于快速理解。完整原文见上方 "📑 README 深度解析"。
📌 简介

LmDotnet 是一个专为 .NET 开发者设计的强大 SDK,旨在简化与多种大语言模型(LLM)的交互。它支持 OpenAI、Anthropic 和 OpenRouter 等主流 Provider,通过统一的接口屏蔽了不同模型 API 之间的差异,让开发者能够更高效地构建基于 AI 的应用程序。

⚡ 功能介绍

LmDotnet 提供了一套功能完备的工具集:支持多 Provider 统一接口,兼容 Streaming 流式输出与传统的同步请求模式;内��可扩展的 Middleware Pipeline,方便进行日志记录、缓存及 Function Calls 处理;具备强类型的模型与响应定义,确保开发过程中的 Type Safety;同时针对高吞吐场景进行了性能优化,并针对 OpenRouter 提供了智能的 Usage 追踪与自动 Fallback 机制。

📋 环境依赖

在使用 LmDotnet 之前,请确保您的项目已配置好依赖注入(Dependency Injection)环境。您需要在 Program.cs 或 Startup.cs 中通过 `services.AddLmDotnet(configuration)` 进行服务注册,并调用 `services.ValidateOpenRouterUsageConfiguration(configuration)` 来验证 OpenRouter 的配置有效性,以确保 Usage 追踪功能正常运行。

🛠 安装步骤(Docker/pip/源码)

您可以通过 NuGet 包管理器快速安装 LmDotnet 的核心组件及对应的 Provider 插件。首先安装核心包 `AchieveAi.LmDotnetTools.LmCore`,随后根据您的需求添加特定的 Provider 包,例如 `AchieveAi.LmDotnetTools.OpenAIProvider` 或 `AchieveAi.LmDotnetTools.AnthropicProvider`。使用命令 `dotnet add package` 即可完成集成。

🚀 使用教程

LmDotnet 的上手非常简单。通过引入对应的 Provider 命名空间,您可以轻松创建 Agent 实例(如 `OpenClientAgent`)。在发送消息时,只需构建 `TextMessage` 并调用 `GenerateReplyAsync` 方法,即可实现与 AI 的交互。对于 OpenRouter 用户,系统会自动处理 Token 消耗统计,您可以通过 `UsageMessage` 直接获取详细的消耗数据。

⚙️ 配置说明(含 MCP / env)

项目主要通过环境变量进行配置。您可以设置 `ENABLE_USAGE_MIDDLEWARE` 来开启 OpenRouter 的使用量追踪,并通过 `OPENROUTER_API_KEY` 提供必要的 API Key。此外,您还可以通过 `USAGE_CACHE_TTL_SEC` 配置 Usage 缓存的生存时间(TTL),以及利用 `ENABLE_INLINE_USAGE` 决定是否优先从 API 响应中读取使用量数据,实现零配置快速启动。

🔌 API 说明

LmDotnet 是一个面向 .NET 生态的综合性 Large Language Model SDK。它不仅封装了 OpenAI、Anthropic 和 OpenRouter 的底层 API,还通过高度抽象的接口设计,为开发者提供了一套标准化的 LLM 调用规范,使其能够轻松应对复杂的 AI 应用开发场景。

🔄 工作流/模块

LmDotnet 采用了灵活的 Middleware Pipeline 设计模式。开发者可以通过实现 `IStreamingMiddleware` 接口来自定义中间件,在消息流转过程中进行预处理或后处理。无论是实现自定义的日志记录、数据缓存,还是复杂的 Function Calls 逻辑,都可以通过在 Pipeline 中注入自定义 Middleware 来实现高度的可扩展性。

🎯 aiskill88 AI 点评 A 级 2026-06-21

高质量的AI工具,易于使用和集成

📚 实用指南(长尾问题)
适合谁
  • 构建多智能体协作系统的 Agent 开发者
  • 构建企业知识库 / RAG 检索应用的团队
最佳实践
  • 生产部署优先使用 Docker Compose 隔离依赖,并挂载 volume 持久化数据
  • Agent 任务先做 dry-run 验证工具调用链,再开启自主执行
常见错误
  • API key 直接提交到 git 仓库(请用 .env 并加入 .gitignore)
  • 容器内无法访问宿主机 localhost — 使用 host.docker.internal
部署方案
  • Docker:LmDotnetTools 提供官方镜像,docker compose up 一键启动
  • 云端托管:可放在 Vercel / Railway / Fly.io 等 PaaS 平台
相关搜索
LmDotnetTools 中文教程LmDotnetTools 安装报错怎么办LmDotnetTools Docker 部署LmDotnetTools Agent 工作流LmDotnetTools 与同类工具对比LmDotnetTools 最佳实践LmDotnetTools 适合谁用

⚡ 核心功能

👥 适合谁
  • 构建多智能体协作系统的 Agent 开发者
  • 构建企业知识库 / RAG 检索应用的团队
⭐ 最佳实践
  • 生产部署优先使用 Docker Compose 隔离依赖,并挂载 volume 持久化数据
  • Agent 任务先做 dry-run 验证工具调用链,再开启自主执行
⚠️ 常见错误
  • API key 直接提交到 git 仓库(请用 .env 并加入 .gitignore)
  • 容器内无法访问宿主机 localhost — 使用 host.docker.internal

👥 适合人群

AI 技术爱好者研究人员和学生开发者和工程师技术创业者

🎯 使用场景

  • 本地部署运行,保护数据隐私,满足合规要求
  • 自定义集成到现有系统,扩展技术栈能力
  • 作为开源基础组件进行商业化二次开发

⚖️ 优点与不足

✅ 优点
  • +MIT 协议,可免费商用
  • +完全开源免费,无授权费用
  • +本地部署,数据完全自主可控
  • +开发者社区支持,遇问题可查可问
⚠️ 不足
  • 安装和初始配置可能需要一定技术基础
  • 功能完整性通常不如成熟商业产品
  • 技术支持主要依赖开源社区,响应速度不稳定
⚠️ 使用须知

AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。

建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。

📄 License 说明

✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。

🔗 相关工具推荐

📚 相关教程推荐
📰 相关 AI 新闻
🍿 AI 圈相关吃瓜
🗺️ 相关解决方案
🧩 你可能还需要
基于当前 Skill 的能力图谱,自动补全的工具组合

❓ 常见问题 FAQ

LmDotnetTools 是一款C#开发的AI辅助工具。开源AI工具:Bunch of Lm tools to connect and work with LLM calls。⭐10 · C# 主要应用场景包括:AI开发和LLM调用。
💡 AI Skill Hub 点评

AI Skill Hub 点评:LmDotnet工具 的核心功能完整,质量优秀。对于AI 技术爱好者来说,这是一个值得纳入个人工具库的选择。建议先在非生产环境试用,再逐步推广。

📚 深入学习 LmDotnet工具
查看分步骤安装教程和完整使用指南,快速上手这款工具
🌐 原始信息
原始名称 LmDotnetTools
原始描述 开源AI工具:Bunch of Lm tools to connect and work with LLM calls。⭐10 · C#
Topics LLMC#AI工具
GitHub https://github.com/achieveai/LmDotnetTools
License MIT
语言 C#
🔗 原始来源
🐙 GitHub 仓库  https://github.com/achieveai/LmDotnetTools

收录时间:2026-06-21 · 更新时间:2026-06-22 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。

📺 订阅 AI Skill Hub Daily Telegram 频道
每天 8 条精选 AI Skill、MCP、Agent 与自动化工具推送
加入频道 →