diff --git a/BotSharp.sln b/BotSharp.sln
index 154f8b3c..2fb22df0 100644
--- a/BotSharp.sln
+++ b/BotSharp.sln
@@ -37,7 +37,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BotSharp.Plugin.MetaAI", "s
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Databases", "Databases", "{53E7CD86-0D19-40D9-A0FA-AB4613837E89}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BotSharp.Plugin.Qdrant", "BotSharp.Plugin.Qdrant\BotSharp.Plugin.Qdrant.csproj", "{9686D771-CA9F-41B0-8508-C5B4E6E457A3}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BotSharp.Plugin.Qdrant", "src\Plugins\BotSharp.Plugin.Qdrant\BotSharp.Plugin.Qdrant.csproj", "{FE2E6CC1-EB80-4518-B3A3-CB373EDA6A83}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -127,14 +127,14 @@ Global
{6D8D18A9-86D7-455E-81EC-9682C30AB7E7}.Release|Any CPU.Build.0 = Release|Any CPU
{6D8D18A9-86D7-455E-81EC-9682C30AB7E7}.Release|x64.ActiveCfg = Release|Any CPU
{6D8D18A9-86D7-455E-81EC-9682C30AB7E7}.Release|x64.Build.0 = Release|Any CPU
- {9686D771-CA9F-41B0-8508-C5B4E6E457A3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {9686D771-CA9F-41B0-8508-C5B4E6E457A3}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {9686D771-CA9F-41B0-8508-C5B4E6E457A3}.Debug|x64.ActiveCfg = Debug|Any CPU
- {9686D771-CA9F-41B0-8508-C5B4E6E457A3}.Debug|x64.Build.0 = Debug|Any CPU
- {9686D771-CA9F-41B0-8508-C5B4E6E457A3}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {9686D771-CA9F-41B0-8508-C5B4E6E457A3}.Release|Any CPU.Build.0 = Release|Any CPU
- {9686D771-CA9F-41B0-8508-C5B4E6E457A3}.Release|x64.ActiveCfg = Release|Any CPU
- {9686D771-CA9F-41B0-8508-C5B4E6E457A3}.Release|x64.Build.0 = Release|Any CPU
+ {FE2E6CC1-EB80-4518-B3A3-CB373EDA6A83}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {FE2E6CC1-EB80-4518-B3A3-CB373EDA6A83}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {FE2E6CC1-EB80-4518-B3A3-CB373EDA6A83}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {FE2E6CC1-EB80-4518-B3A3-CB373EDA6A83}.Debug|x64.Build.0 = Debug|Any CPU
+ {FE2E6CC1-EB80-4518-B3A3-CB373EDA6A83}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {FE2E6CC1-EB80-4518-B3A3-CB373EDA6A83}.Release|Any CPU.Build.0 = Release|Any CPU
+ {FE2E6CC1-EB80-4518-B3A3-CB373EDA6A83}.Release|x64.ActiveCfg = Release|Any CPU
+ {FE2E6CC1-EB80-4518-B3A3-CB373EDA6A83}.Release|x64.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -153,7 +153,7 @@ Global
{0B6E1D7F-ABDE-47F6-8B2D-4483C2CFF2D6} = {32FAFFFE-A4CB-4FEE-BF7C-84518BBC6DCC}
{6D8D18A9-86D7-455E-81EC-9682C30AB7E7} = {D5293208-2BEF-42FC-A64C-5954F61720BA}
{53E7CD86-0D19-40D9-A0FA-AB4613837E89} = {2635EC9B-2E5F-4313-AC21-0B847F31F36C}
- {9686D771-CA9F-41B0-8508-C5B4E6E457A3} = {53E7CD86-0D19-40D9-A0FA-AB4613837E89}
+ {FE2E6CC1-EB80-4518-B3A3-CB373EDA6A83} = {53E7CD86-0D19-40D9-A0FA-AB4613837E89}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {A9969D89-C98B-40A5-A12B-FC87E55B3A19}
diff --git a/src/Infrastructure/BotSharp.Abstraction/MLTasks/ITextEmbedding.cs b/src/Infrastructure/BotSharp.Abstraction/MLTasks/ITextEmbedding.cs
index 6c483cdf..eb82f086 100644
--- a/src/Infrastructure/BotSharp.Abstraction/MLTasks/ITextEmbedding.cs
+++ b/src/Infrastructure/BotSharp.Abstraction/MLTasks/ITextEmbedding.cs
@@ -2,5 +2,6 @@ namespace BotSharp.Abstraction.MLTasks;
public interface ITextEmbedding
{
+ int Dimension { get; }
float[] GetVector(string text);
}
diff --git a/src/Plugins/BotSharp.Plugin.MetaAI/Providers/fastTextEmbeddingProvider.cs b/src/Plugins/BotSharp.Plugin.MetaAI/Providers/fastTextEmbeddingProvider.cs
index 1d0c5b1e..cd5ef067 100644
--- a/src/Plugins/BotSharp.Plugin.MetaAI/Providers/fastTextEmbeddingProvider.cs
+++ b/src/Plugins/BotSharp.Plugin.MetaAI/Providers/fastTextEmbeddingProvider.cs
@@ -10,6 +10,8 @@ public class fastTextEmbeddingProvider : ITextEmbedding
private FastTextWrapper _fastText;
private readonly fastTextSetting _settings;
+ public int Dimension => _fastText.GetModelDimension();
+
public fastTextEmbeddingProvider(fastTextSetting settings)
{
_settings = settings;
@@ -22,7 +24,7 @@ public class fastTextEmbeddingProvider : ITextEmbedding
if (!_fastText.IsModelReady())
{
- _fastText.LoadModel(settings.ModelPath);
+ _fastText.LoadModel(_settings.ModelPath);
}
}
diff --git a/BotSharp.Plugin.Qdrant/BotSharp.Plugin.Qdrant.csproj b/src/Plugins/BotSharp.Plugin.Qdrant/BotSharp.Plugin.Qdrant.csproj
similarity index 75%
rename from BotSharp.Plugin.Qdrant/BotSharp.Plugin.Qdrant.csproj
rename to src/Plugins/BotSharp.Plugin.Qdrant/BotSharp.Plugin.Qdrant.csproj
index 921dcdcf..0a3bbea2 100644
--- a/BotSharp.Plugin.Qdrant/BotSharp.Plugin.Qdrant.csproj
+++ b/src/Plugins/BotSharp.Plugin.Qdrant/BotSharp.Plugin.Qdrant.csproj
@@ -11,6 +11,6 @@
-
+
diff --git a/BotSharp.Plugin.Qdrant/QdrantDb.cs b/src/Plugins/BotSharp.Plugin.Qdrant/QdrantDb.cs
similarity index 100%
rename from BotSharp.Plugin.Qdrant/QdrantDb.cs
rename to src/Plugins/BotSharp.Plugin.Qdrant/QdrantDb.cs
diff --git a/BotSharp.Plugin.Qdrant/QdrantPlugin.cs b/src/Plugins/BotSharp.Plugin.Qdrant/QdrantPlugin.cs
similarity index 100%
rename from BotSharp.Plugin.Qdrant/QdrantPlugin.cs
rename to src/Plugins/BotSharp.Plugin.Qdrant/QdrantPlugin.cs
diff --git a/BotSharp.Plugin.Qdrant/QdrantSetting.cs b/src/Plugins/BotSharp.Plugin.Qdrant/QdrantSetting.cs
similarity index 100%
rename from BotSharp.Plugin.Qdrant/QdrantSetting.cs
rename to src/Plugins/BotSharp.Plugin.Qdrant/QdrantSetting.cs
diff --git a/src/WebStarter/WebStarter.csproj b/src/WebStarter/WebStarter.csproj
index 4d8be7ab..0a96a9ca 100644
--- a/src/WebStarter/WebStarter.csproj
+++ b/src/WebStarter/WebStarter.csproj
@@ -27,12 +27,12 @@
-
+