diff --git a/OllamaStudy.UseExtensionsAI/ExtensionAI4OllamaTest.cs b/OllamaStudy.UseExtensionsAI/ExtensionAI4OllamaTest.cs new file mode 100644 index 0000000..faef859 --- /dev/null +++ b/OllamaStudy.UseExtensionsAI/ExtensionAI4OllamaTest.cs @@ -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); + } +} diff --git a/OllamaStudy.UseExtensionsAI/ExtensionAI4OpenAITest.cs b/OllamaStudy.UseExtensionsAI/ExtensionAI4OpenAITest.cs new file mode 100644 index 0000000..281d3fd --- /dev/null +++ b/OllamaStudy.UseExtensionsAI/ExtensionAI4OpenAITest.cs @@ -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); + } +} diff --git a/OllamaStudy.UseExtensionsAI/GloabolUsing.cs b/OllamaStudy.UseExtensionsAI/GloabolUsing.cs index 4ea880a..8bc0834 100644 --- a/OllamaStudy.UseExtensionsAI/GloabolUsing.cs +++ b/OllamaStudy.UseExtensionsAI/GloabolUsing.cs @@ -1,4 +1,5 @@ global using System; +global using System.ClientModel; global using System.Collections; global using System.Collections.Generic; 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.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.Sdk; global using Xunit.Extensions; +global using Xunit.Abstractions; +global using Xunit.DependencyInjection; global using OllamaStudy.Core; diff --git a/OllamaStudy.UseExtensionsAI/OllamaStudy.UseExtensionsAI.csproj b/OllamaStudy.UseExtensionsAI/OllamaStudy.UseExtensionsAI.csproj index b9e6792..bc3235c 100644 --- a/OllamaStudy.UseExtensionsAI/OllamaStudy.UseExtensionsAI.csproj +++ b/OllamaStudy.UseExtensionsAI/OllamaStudy.UseExtensionsAI.csproj @@ -8,7 +8,7 @@ - + diff --git a/OllamaStudy.UseExtensionsAI/UseOpenAITest.cs b/OllamaStudy.UseExtensionsAI/OpenAISdkTest.cs similarity index 89% rename from OllamaStudy.UseExtensionsAI/UseOpenAITest.cs rename to OllamaStudy.UseExtensionsAI/OpenAISdkTest.cs index 4a07650..a6809d6 100644 --- a/OllamaStudy.UseExtensionsAI/UseOpenAITest.cs +++ b/OllamaStudy.UseExtensionsAI/OpenAISdkTest.cs @@ -1,23 +1,16 @@ -using System.ClientModel; - -using Xunit.Abstractions; - -using OpenAI; -using OpenAI.Chat; - -namespace OllamaStudy.UseExtensionsAI; +namespace OllamaStudy.UseExtensionsAI; /// /// Ollama兼容OpenAI接口,可以直接使用OpenAI的SDK调用 /// -public class UseOpenAITest +public class OpenAISdkTest { private ITestOutputHelper _output; private IOptionsMonitor _ollamaOptionsMonitor; private OpenAIClient _defaultOpenAIClient; private ChatClient _chatClient; - public UseOpenAITest(ITestOutputHelper outputHelper, OpenAIClient defaultOpenAIClient, IOptionsMonitor ollamaOptionsMonitor) + public OpenAISdkTest(ITestOutputHelper outputHelper, OpenAIClient defaultOpenAIClient, IOptionsMonitor ollamaOptionsMonitor) { _output = outputHelper; _defaultOpenAIClient = defaultOpenAIClient; diff --git a/OllamaStudy.UseExtensionsAI/UseExtensionAITest.cs b/OllamaStudy.UseExtensionsAI/UseExtensionAITest.cs deleted file mode 100644 index 7de5d73..0000000 --- a/OllamaStudy.UseExtensionsAI/UseExtensionAITest.cs +++ /dev/null @@ -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() - { - - } - } -} diff --git a/OllamaStudy.UseExtensionsAI/UseXUnitTest.cs b/OllamaStudy.UseExtensionsAI/UseXUnitTest.cs index d5dc546..c0299e6 100644 --- a/OllamaStudy.UseExtensionsAI/UseXUnitTest.cs +++ b/OllamaStudy.UseExtensionsAI/UseXUnitTest.cs @@ -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) - { - _output = outputHelper; - } + public UseXUnitTest(ITestOutputHelper outputHelper) + { + _output = outputHelper; + } - [Fact] - public void UseXunit_Test() - { - string message = "使用xUnit单元测试框架!"; + [Fact] + public void UseXunit_Test() + { + string message = "使用xUnit单元测试框架!"; - _output.WriteLine(message); + _output.WriteLine(message); - Assert.True(true, message); - } + Assert.True(true, message); } }