受欢迎的博客标签

How LLM works(Ollama)?c# .Net

Published

安装

Ollama的安装方式常用的有两种,一种是去官网下载,另一种是去GitHub下载,可以选择对应的系统版本进行下载

官网首页直接下载 https://ollama.com/
Github Relase下载 https://github.com/ollama/ollama/releases

 

模型

运行模型

ollama run qwen2:0.5b

 

访问

Ollama提供服务的本质是http接口,通过http接口的方式来调用/api/generate接口

curl http://localhost:11434/api/generate -d '{
  "model": "qwen2:7b",
  "prompt": "请你告诉我你知道的天气有哪些?用json格式输出",
  "stream": false
}'

上面提到了两种方式访问Ollama服务,一种是命令行的方式,另一种是http接口的方式。这两种虽然方式原始,但是并没有界面操作显得直观

WebUI

选用的是一个Open WebUIOpen WebUI

 

C#整合Ollama

dotnet add package Ollama

它支持function call

 

string modelName = "qwen2:7b";
using var ollama = new OllamaApiClient(baseUri: new Uri("http://127.0.0.1:11434/api"));

Console.WriteLine("开始对话!!!");
string userInput = "";
do
{
    Console.WriteLine("User:");
    userInput = Console.ReadLine()!;
    var enumerable = ollama.Completions.GenerateCompletionAsync(modelName, userInput);
    Console.WriteLine("Agent:");
    await foreach (var response in enumerable)
    {
        Console.Write($"{response.Response}");
    }
    Console.WriteLine();

} while (!string.Equals(userInput, "exit", StringComparison.OrdinalIgnoreCase));
Console.WriteLine("对话结束!!!");

 

 

useful links

https://www.cnblogs.com/mq0036/p/18866251