main
bicijinlian 3 weeks ago
parent 20de958054
commit 46ce4e1eb8

@ -0,0 +1,20 @@
namespace OllamaStudy.UseExtensionsAI;
public class ExtensionAI4OllamaTest
{
private ITestOutputHelper _output;
public ExtensionAI4OllamaTest(ITestOutputHelper outputHelper)
{
_output = outputHelper;
}
[Fact]
public async Task AI_Test()
{
IChatClient client = new OllamaApiClient(new Uri("http://localhost:11434/"), "phi4-mini:3.8b");
var response = await client.GetResponseAsync("什么是AI?");
_output.WriteLine(response.Text);
}
}

@ -0,0 +1,25 @@
namespace OllamaStudy.UseExtensionsAI;
public class ExtensionAI4OpenAITest
{
private ITestOutputHelper _output;
public ExtensionAI4OpenAITest(ITestOutputHelper outputHelper)
{
_output = outputHelper;
}
[Fact]
public async Task AI_Test()
{
var openAiClient = new OpenAIClient(new ApiKeyCredential("unnecessary"), new OpenAIClientOptions() { Endpoint = new Uri("http://localhost:11434/v1")});
IChatClient client = openAiClient.GetChatClient("qwen3:0.6b").AsIChatClient();
var response = await client.GetResponseAsync("什么是AI?");
_output.WriteLine(response.Text);
Assert.NotNull(response);
Assert.NotEmpty(response.Messages);
}
}

@ -1,4 +1,5 @@
global using System; global using System;
global using System.ClientModel;
global using System.Collections; global using System.Collections;
global using System.Collections.Generic; global using System.Collections.Generic;
global using System.Collections.Frozen; global using System.Collections.Frozen;
@ -38,9 +39,29 @@ global using Microsoft.Extensions.Logging.Debug;
global using Microsoft.Extensions.Logging.EventLog; global using Microsoft.Extensions.Logging.EventLog;
global using Microsoft.Extensions.Logging.EventSource; global using Microsoft.Extensions.Logging.EventSource;
global using Microsoft.Extensions.AI;
global using OllamaSharp;
global using OllamaSharp.Models;
global using OllamaSharp.Tools;
global using OllamaSharp.ModelContextProtocol;
global using OpenAI;
global using OpenAI.Audio;
global using OpenAI.Assistants;
global using OpenAI.Chat;
global using OpenAI.Models;
global using OpenAI.Embeddings;
global using OpenAI.Files;
global using OpenAI.Images;
global using OpenAI.Batch;
global using OpenAI.Moderations;
global using OpenAI.Responses;
global using OpenAI.VectorStores;
global using Xunit; global using Xunit;
global using Xunit.Sdk; global using Xunit.Sdk;
global using Xunit.Extensions; global using Xunit.Extensions;
global using Xunit.Abstractions;
global using Xunit.DependencyInjection;
global using OllamaStudy.Core; global using OllamaStudy.Core;

@ -8,7 +8,7 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<None Include="UseOpenAITest.cs" /> <None Include="OpenAISdkTest.cs" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

@ -1,23 +1,16 @@
using System.ClientModel; namespace OllamaStudy.UseExtensionsAI;
using Xunit.Abstractions;
using OpenAI;
using OpenAI.Chat;
namespace OllamaStudy.UseExtensionsAI;
/// <summary> /// <summary>
/// Ollama兼容OpenAI接口可以直接使用OpenAI的SDK调用 /// Ollama兼容OpenAI接口可以直接使用OpenAI的SDK调用
/// </summary> /// </summary>
public class UseOpenAITest public class OpenAISdkTest
{ {
private ITestOutputHelper _output; private ITestOutputHelper _output;
private IOptionsMonitor<OllamaServerOption> _ollamaOptionsMonitor; private IOptionsMonitor<OllamaServerOption> _ollamaOptionsMonitor;
private OpenAIClient _defaultOpenAIClient; private OpenAIClient _defaultOpenAIClient;
private ChatClient _chatClient; private ChatClient _chatClient;
public UseOpenAITest(ITestOutputHelper outputHelper, OpenAIClient defaultOpenAIClient, IOptionsMonitor<OllamaServerOption> ollamaOptionsMonitor) public OpenAISdkTest(ITestOutputHelper outputHelper, OpenAIClient defaultOpenAIClient, IOptionsMonitor<OllamaServerOption> ollamaOptionsMonitor)
{ {
_output = outputHelper; _output = outputHelper;
_defaultOpenAIClient = defaultOpenAIClient; _defaultOpenAIClient = defaultOpenAIClient;

@ -1,20 +0,0 @@
using Xunit.Abstractions;
namespace OllamaStudy.UseExtensionsAI
{
public class UseExtensionAITest
{
private ITestOutputHelper _output;
public UseExtensionAITest(ITestOutputHelper outputHelper)
{
_output = outputHelper;
}
[Fact]
public void AI_Test()
{
}
}
}

@ -1,24 +1,21 @@
using Xunit.Abstractions; namespace OllamaStudy.UseExtensionsAI;
namespace OllamaStudy.UseExtensionsAI public class UseXUnitTest
{ {
public class UseXUnitTest private ITestOutputHelper _output;
{
private ITestOutputHelper _output;
public UseXUnitTest(ITestOutputHelper outputHelper) public UseXUnitTest(ITestOutputHelper outputHelper)
{ {
_output = outputHelper; _output = outputHelper;
} }
[Fact] [Fact]
public void UseXunit_Test() public void UseXunit_Test()
{ {
string message = "使用xUnit单元测试框架"; string message = "使用xUnit单元测试框架";
_output.WriteLine(message); _output.WriteLine(message);
Assert.True(true, message); Assert.True(true, message);
}
} }
} }

Loading…
Cancel
Save