@@ -0,0 +1,8 @@
|
||||
namespace Api.Models.Settings;
|
||||
|
||||
public sealed class AiSettings
|
||||
{
|
||||
public string Provider { get; set; } = "OpenAI";
|
||||
public OpenAiProviderSettings OpenAI { get; set; } = new();
|
||||
public OllamaProviderSettings Ollama { get; set; } = new();
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
namespace Api.Models.Settings;
|
||||
|
||||
public sealed class InternalApiSettings
|
||||
{
|
||||
public string ApiKey { get; set; } = string.Empty;
|
||||
public bool RequireApiKey { get; set; } = false;
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
namespace Api.Models.Settings;
|
||||
|
||||
public sealed class OllamaProviderSettings
|
||||
{
|
||||
public string BaseUrl { get; set; } = "http://localhost:11434";
|
||||
public string ChatModel { get; set; } = "llama3.1:8b";
|
||||
public string EmbeddingModel { get; set; } = "nomic-embed-text";
|
||||
public int TimeoutSeconds { get; set; } = 180;
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
namespace Api.Models.Settings;
|
||||
|
||||
public sealed class OpenAiProviderSettings
|
||||
{
|
||||
public string ApiKey { get; set; } = string.Empty;
|
||||
public string ChatModel { get; set; } = "gpt-4o-mini";
|
||||
public string EmbeddingModel { get; set; } = "text-embedding-3-small";
|
||||
public int TimeoutSeconds { get; set; } = 90;
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
namespace Api.Models.Settings;
|
||||
|
||||
public sealed class RagSettings
|
||||
{
|
||||
public int MaxFileSizeMb { get; set; } = 8;
|
||||
public int ChunkSize { get; set; } = 900;
|
||||
public int ChunkOverlap { get; set; } = 150;
|
||||
public int MaxTextChars { get; set; } = 60000;
|
||||
public int DefaultTopK { get; set; } = 20;
|
||||
public int MaxTopK { get; set; } = 50;
|
||||
public bool ClassifyWithAi { get; set; } = false;
|
||||
}
|
||||
Reference in New Issue
Block a user