C#开源项目:私有化部署LLama推理大模型

推荐一个C#大模型推理开源项目,让你轻松驾驭私有化部署!

01 项目简介

LLama是Meta发布的一个免费开源的大模型,是一个有着上百亿数量级参数的大语言模型,支持CPU和GPU两种方式。

而LLamaSharp就是针对llama.cpp封装的C#版本,让方便我们基于C#开发应用,让我们不需要自己编译llama.cpp。它的性能接近llama.cpp,支持Windows、Linux和MAC。

02 项目结构

该项目提供了多种Web、WebAPI、控制台等多个Demo版本。

03 使用方法

1、安装依赖

复制代码
Install-Package LLamaSharp

2、演示源码

复制代码
using LLama.Common;
using LLama;

string modelPath = "..\\LLama.Unittest\\Models\\llama-2-7b-chat.Q4_0.gguf"; 
var prompt = " I want a C # function to do binary search of an array , please show me the code."; //提示词

// 加载模型
var parameters = new ModelParams(modelPath)
{
    ContextSize = 1024,
    Seed = 1337,
    GpuLayerCount = 5
};
using var model = LLamaWeights.LoadFromFile(parameters);

// 初始化聊天会话
using var context = model.CreateContext(parameters);
var ex = new InteractiveExecutor(context);
ChatSession session = new ChatSession(ex);

// 显示提示
Console.WriteLine();
Console.Write(prompt);

// 循环运行推理以与LLM聊天
while (prompt != "stop")
{
    foreach (var text in session.Chat(prompt, new InferenceParams() { Temperature = 0.6f, AntiPrompts = new List<string> { "User:" } }))
    {
        Console.Write(text);
    }
    prompt = Console.ReadLine();
}

// 保存会话
session.SaveSession("SavedSessionPath");

3、效果

04 项目地址

https://github.com/SciSharp/LLamaSharp

更多开源项目: https://github.com/bianchenglequ/NetCodeTop

  • End -

推荐阅读

Helix Toolkit:为.NET开发者带来的3D视觉盛宴

10个基于.Net开发的Windows开源软件项目

毁掉一个程序员的6个方法

推荐10个.Net通用权限管理开源项目

基于.NET的强大文件格式开源转换工具

相关推荐
IT_Octopus几秒前
JSON 日志里的 `{“$ref“:“$.xxx“}`:从 fastjson 兼容包到原生 fastjson2 的迁移实录
开发语言·python·json
geovindu几秒前
python:HandWriting Recognition using paddlepaddle
开发语言·后端·python·paddlepaddle
步行cgn9 分钟前
为何以继承方式引入SpringBoot
java·spring boot·后端
Mr_hou25 分钟前
左手.NET右手Node:一个后端开发的双修之路
后端
wuyk55534 分钟前
Python 零基础入门第九章:用户输入与 While 循环
开发语言·python
wno70435 分钟前
Spring Boot配合Hibernate Validator参数校验
spring boot·后端·hibernate
兮动人38 分钟前
Python变量与常量
开发语言·python·机器学习·python变量与常量
风筝在晴天搁浅1 小时前
解题代码清爽版
java·开发语言
Java后端的Ai之路1 小时前
21、Python - 命令模式
开发语言·人工智能·python·命令模式·外观模式
astronautyi1 小时前
Go 运行时内存分配与 GC 位图深度剖析
开发语言·后端·golang