feat: 完成兼容处理

This commit is contained in:
ccnetcore
2025-07-18 20:46:30 +08:00
parent ccba2667bc
commit 651f0157dc
8 changed files with 966 additions and 1095 deletions

View File

@@ -0,0 +1,8 @@
using Yi.Framework.AiHub.Application.Contracts.Dtos.OpenAi;
namespace Yi.Framework.AiHub.Domain.AiGateWay;
public interface ISpecialCompatible
{
public void Compatible(ThorChatCompletionsRequest request);
}

View File

@@ -0,0 +1,23 @@
using Microsoft.Extensions.Options;
using Volo.Abp.DependencyInjection;
using Yi.Framework.AiHub.Application.Contracts.Dtos.OpenAi;
namespace Yi.Framework.AiHub.Domain.AiGateWay;
public class SpecialCompatible : ISpecialCompatible,ISingletonDependency
{
private readonly IOptions<SpecialCompatibleOptions> _options;
public SpecialCompatible(IOptions<SpecialCompatibleOptions> options)
{
_options = options;
}
public void Compatible(ThorChatCompletionsRequest request)
{
foreach (var handle in _options.Value.Handles)
{
handle(request);
}
}
}

View File

@@ -0,0 +1,8 @@
using Yi.Framework.AiHub.Application.Contracts.Dtos.OpenAi;
namespace Yi.Framework.AiHub.Domain.AiGateWay;
public class SpecialCompatibleOptions
{
public List<Action<ThorChatCompletionsRequest>> Handles { get; set; } = new();
}