diff --git a/app/MindWork AI Studio/Settings/DataModel/DataSourceERI_V1.cs b/app/MindWork AI Studio/Settings/DataModel/DataSourceERI_V1.cs
index f06fbc7c..eb38167d 100644
--- a/app/MindWork AI Studio/Settings/DataModel/DataSourceERI_V1.cs
+++ b/app/MindWork AI Studio/Settings/DataModel/DataSourceERI_V1.cs
@@ -6,7 +6,7 @@ namespace AIStudio.Settings.DataModel;
///
/// An external data source, accessed via an ERI server, cf. https://github.com/MindWorkAI/ERI.
///
-public readonly record struct DataSourceERI_V1 : IDataSource
+public readonly record struct DataSourceERI_V1 : IExternalDataSource
{
public DataSourceERI_V1()
{
diff --git a/app/MindWork AI Studio/Settings/DataModel/DataSourceLocalDirectory.cs b/app/MindWork AI Studio/Settings/DataModel/DataSourceLocalDirectory.cs
index 0f9b2fde..963b9ba1 100644
--- a/app/MindWork AI Studio/Settings/DataModel/DataSourceLocalDirectory.cs
+++ b/app/MindWork AI Studio/Settings/DataModel/DataSourceLocalDirectory.cs
@@ -3,7 +3,7 @@ namespace AIStudio.Settings.DataModel;
///
/// Represents a local directory as a data source.
///
-public readonly record struct DataSourceLocalDirectory : IDataSource
+public readonly record struct DataSourceLocalDirectory : IInternalDataSource
{
public DataSourceLocalDirectory()
{
@@ -21,6 +21,9 @@ public readonly record struct DataSourceLocalDirectory : IDataSource
///
public DataSourceType Type { get; init; } = DataSourceType.NONE;
+ ///
+ public string EmbeddingId { get; init; } = Guid.Empty.ToString();
+
///
/// The path to the directory.
///
diff --git a/app/MindWork AI Studio/Settings/DataModel/DataSourceLocalFile.cs b/app/MindWork AI Studio/Settings/DataModel/DataSourceLocalFile.cs
index 7c70c76b..a6088190 100644
--- a/app/MindWork AI Studio/Settings/DataModel/DataSourceLocalFile.cs
+++ b/app/MindWork AI Studio/Settings/DataModel/DataSourceLocalFile.cs
@@ -3,7 +3,7 @@ namespace AIStudio.Settings.DataModel;
///
/// Represents one local file as a data source.
///
-public readonly record struct DataSourceLocalFile : IDataSource
+public readonly record struct DataSourceLocalFile : IInternalDataSource
{
public DataSourceLocalFile()
{
@@ -21,6 +21,9 @@ public readonly record struct DataSourceLocalFile : IDataSource
///
public DataSourceType Type { get; init; } = DataSourceType.NONE;
+ ///
+ public string EmbeddingId { get; init; } = Guid.Empty.ToString();
+
///
/// The path to the file.
///
diff --git a/app/MindWork AI Studio/Settings/IExternalDataSource.cs b/app/MindWork AI Studio/Settings/IExternalDataSource.cs
new file mode 100644
index 00000000..ffe08bad
--- /dev/null
+++ b/app/MindWork AI Studio/Settings/IExternalDataSource.cs
@@ -0,0 +1,3 @@
+namespace AIStudio.Settings;
+
+public interface IExternalDataSource : IDataSource;
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Settings/IInternalDataSource.cs b/app/MindWork AI Studio/Settings/IInternalDataSource.cs
new file mode 100644
index 00000000..0ffa7dea
--- /dev/null
+++ b/app/MindWork AI Studio/Settings/IInternalDataSource.cs
@@ -0,0 +1,9 @@
+namespace AIStudio.Settings;
+
+public interface IInternalDataSource : IDataSource
+{
+ ///
+ /// The unique identifier of the embedding method used by this internal data source.
+ ///
+ public string EmbeddingId { get; init; }
+}
\ No newline at end of file