mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2026-11-04 19:08:45 +00:00
Added transcription of audio and video files to local data sources (#1081)
Co-authored-by: Paul Koudelka <106623909+PaulKoudelka@users.noreply.github.com>
This commit is contained in:
1 parent
8642ce2d81
commit
752f7d828a
82 files changed
+3231
-302
No files matched your search
@@ -83,6 +83,7 @@ public partial class DataFolders : MSGComponentBase
|
||||
DataBackupEntryKind.VISUAL_BRIEFINGS => T("Your projects in the Visual Briefing Assistant."),
|
||||
DataBackupEntryKind.DATA_SOURCE_INDEX => T("The index of your local data sources: which files AI Studio embedded, and their text."),
|
||||
DataBackupEntryKind.VECTOR_STORES => T("The embeddings of your local data sources."),
|
||||
DataBackupEntryKind.MEDIA_TRANSCRIPTS => T("The transcripts of the audio and video files in your local data sources."),
|
||||
|
||||
DataBackupEntryKind.SETTINGS_OF_OTHER_VERSIONS => T("Copies of your settings, which every version of AI Studio keeps for itself. Your current settings are all a backup needs."),
|
||||
DataBackupEntryKind.BUILT_IN_PLUGINS => T("Plugins which come with AI Studio, such as the language packs. AI Studio brings them back by itself."),
|
||||
|
||||
@@ -1,9 +1,18 @@
|
||||
@inherits MSGComponentBase
|
||||
|
||||
<MudAlert Severity="Severity.Warning" Variant="Variant.Outlined" Dense="@true" Class="mb-3">
|
||||
<MudJustifiedText Typo="Typo.body2">
|
||||
@this.WarningText
|
||||
</MudJustifiedText>
|
||||
@if (this.SendsEmbeddingsToCloud)
|
||||
{
|
||||
<MudJustifiedText Typo="Typo.body2">
|
||||
@this.WarningText
|
||||
</MudJustifiedText>
|
||||
}
|
||||
@if (this.SendsMediaToCloudTranscription)
|
||||
{
|
||||
<MudJustifiedText Typo="Typo.body2" Class="@(this.SendsEmbeddingsToCloud ? "mt-2" : string.Empty)">
|
||||
@this.TranscriptionWarningText
|
||||
</MudJustifiedText>
|
||||
}
|
||||
</MudAlert>
|
||||
|
||||
<MudTextSwitch Value="@this.UserAcknowledged" ValueChanged="@this.UserAcknowledgedChanged" Label="@T("I confirm that I have read and understood the above")" LabelOn="@T("Yes, please send my data to the external embedding provider")" LabelOff="@T("No, I will choose another embedding")" Validation="@this.Validation"/>
|
||||
<MudTextSwitch Value="@this.UserAcknowledged" ValueChanged="@this.UserAcknowledgedChanged" Label="@T("I confirm that I have read and understood the above")" LabelOn="@this.LabelOn" LabelOff="@this.LabelOff" Validation="@this.Validation"/>
|
||||
@@ -4,6 +4,10 @@ using Microsoft.AspNetCore.Components;
|
||||
|
||||
namespace AIStudio.Components;
|
||||
|
||||
/// <summary>
|
||||
/// Warns that a data source sends its content to providers which are not self-hosted: its text to
|
||||
/// the embedding provider, and its audio and video files to the transcription provider.
|
||||
/// </summary>
|
||||
public partial class DataSourceCloudEmbeddingWarning : MSGComponentBase
|
||||
{
|
||||
[Parameter]
|
||||
@@ -21,6 +25,33 @@ public partial class DataSourceCloudEmbeddingWarning : MSGComponentBase
|
||||
[Parameter]
|
||||
public Func<bool, string?> Validation { get; set; } = _ => null;
|
||||
|
||||
/// <summary>
|
||||
/// Whether the content goes to an embedding provider which is not self-hosted.
|
||||
/// </summary>
|
||||
[Parameter]
|
||||
public bool SendsEmbeddingsToCloud { get; set; } = true;
|
||||
|
||||
/// <summary>
|
||||
/// The name of the transcription provider which is not self-hosted and receives the audio and
|
||||
/// video files of the data source, or empty when no media file leaves the computer.
|
||||
/// </summary>
|
||||
[Parameter]
|
||||
public string CloudTranscriptionProvider { get; set; } = string.Empty;
|
||||
|
||||
private bool SendsMediaToCloudTranscription => !string.IsNullOrWhiteSpace(this.CloudTranscriptionProvider);
|
||||
|
||||
private string LabelOn => this.SendsMediaToCloudTranscription
|
||||
? T("Yes, please send my data to the external providers")
|
||||
: T("Yes, please send my data to the external embedding provider");
|
||||
|
||||
private string LabelOff => this.SendsMediaToCloudTranscription
|
||||
? T("No, I will choose other providers or files")
|
||||
: T("No, I will choose another embedding");
|
||||
|
||||
private string TranscriptionWarningText => string.Format(
|
||||
T("Warning: Your transcription provider '{0}' is not self-hosted. Audio and video files this data source selects are sent to it to be transcribed, which can cost money. AI Studio keeps every transcript, so an unchanged recording is sent only once. MindWork AI Studio has no control over what that third party does with the recordings after they are sent."),
|
||||
this.CloudTranscriptionProvider);
|
||||
|
||||
private string WarningText
|
||||
{
|
||||
get
|
||||
|
||||
Reference in new issue
Block a user