mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-01-09 22:06:51 +01:00
Compare commits
1 Commits
shawn/fixq
...
shawn/addC
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
790fc6c4dc |
@@ -7,6 +7,8 @@
|
||||
<PackageVersion Include="AdaptiveCards.ObjectModel.WinUI3" Version="2.0.0-beta" />
|
||||
<PackageVersion Include="AdaptiveCards.Rendering.WinUI3" Version="2.1.0-beta" />
|
||||
<PackageVersion Include="AdaptiveCards.Templating" Version="2.0.5" />
|
||||
<PackageVersion Include="AWSSDK.BedrockRuntime" Version="4.0.7.2" />
|
||||
<PackageVersion Include="AWSSDK.Core" Version="4.0.0.32" />
|
||||
<PackageVersion Include="boost" Version="1.87.0" TargetFramework="native" />
|
||||
<PackageVersion Include="boost_regex-vc143" Version="1.87.0" TargetFramework="native" />
|
||||
<PackageVersion Include="CommunityToolkit.Labs.WinUI.Controls.OpacityMaskView" Version="0.1.251101-build.2372" />
|
||||
@@ -56,6 +58,7 @@
|
||||
<PackageVersion Include="Microsoft.AI.Foundry.Local" Version="0.3.0" />
|
||||
<PackageVersion Include="Microsoft.SemanticKernel" Version="1.66.0" />
|
||||
<PackageVersion Include="Microsoft.SemanticKernel.Connectors.OpenAI" Version="1.66.0" />
|
||||
<PackageVersion Include="Microsoft.SemanticKernel.Connectors.Amazon" Version="1.66.0-alpha" />
|
||||
<PackageVersion Include="Microsoft.SemanticKernel.Connectors.AzureAIInference" Version="1.66.0-beta" />
|
||||
<PackageVersion Include="Microsoft.SemanticKernel.Connectors.Google" Version="1.66.0-alpha" />
|
||||
<PackageVersion Include="Microsoft.SemanticKernel.Connectors.MistralAI" Version="1.66.0-alpha" />
|
||||
|
||||
@@ -59,6 +59,9 @@
|
||||
<PackageReference Include="CommunityToolkit.WinUI.Controls.Primitives" />
|
||||
<!-- Including MessagePack to force version, since it's used by StreamJsonRpc but contains vulnerabilities. After StreamJsonRpc updates the version of MessagePack, we can upgrade StreamJsonRpc instead. -->
|
||||
<PackageReference Include="MessagePack" />
|
||||
<PackageReference Include="AWSSDK.BedrockRuntime" />
|
||||
<PackageReference Include="AWSSDK.Core" />
|
||||
<PackageReference Include="Microsoft.SemanticKernel.Connectors.Amazon" />
|
||||
<PackageReference Include="Microsoft.SemanticKernel.Connectors.AzureAIInference" />
|
||||
<PackageReference Include="Microsoft.SemanticKernel.Connectors.Google" />
|
||||
<PackageReference Include="Microsoft.SemanticKernel.Connectors.MistralAI" />
|
||||
|
||||
@@ -8,6 +8,9 @@ using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using AdvancedPaste.Helpers;
|
||||
using AdvancedPaste.Models;
|
||||
using Amazon;
|
||||
using Amazon.BedrockRuntime;
|
||||
using Amazon.Runtime;
|
||||
using Microsoft.PowerToys.Settings.UI.Library;
|
||||
using Microsoft.SemanticKernel;
|
||||
using Microsoft.SemanticKernel.ChatCompletion;
|
||||
@@ -29,6 +32,7 @@ namespace AdvancedPaste.Services.CustomActions
|
||||
AIServiceType.Google,
|
||||
AIServiceType.AzureAIInference,
|
||||
AIServiceType.Ollama,
|
||||
AIServiceType.Bedrock,
|
||||
};
|
||||
|
||||
public static PasteAIProviderRegistration Registration { get; } = new(SupportedTypes, config => new SemanticKernelPasteProvider(config));
|
||||
@@ -160,6 +164,18 @@ namespace AdvancedPaste.Services.CustomActions
|
||||
case AIServiceType.Ollama:
|
||||
kernelBuilder.AddOllamaChatCompletion(_config.Model, endpoint: new Uri(endpoint));
|
||||
break;
|
||||
case AIServiceType.Bedrock:
|
||||
var region = RequireEndpoint(endpoint, _serviceType);
|
||||
var parts = apiKey.Split(':');
|
||||
if (parts.Length != 2)
|
||||
{
|
||||
throw new ArgumentException("API Key for Bedrock must be in the format 'AccessKey:SecretKey'");
|
||||
}
|
||||
|
||||
var credentials = new BasicAWSCredentials(parts[0], parts[1]);
|
||||
var bedrockRuntime = new AmazonBedrockRuntimeClient(credentials, RegionEndpoint.GetBySystemName(region));
|
||||
kernelBuilder.AddBedrockChatCompletionService(_config.Model, bedrockRuntime: bedrockRuntime, serviceId: _config.Model);
|
||||
break;
|
||||
|
||||
default:
|
||||
throw new NotSupportedException($"Provider '{_config.ProviderType}' is not supported by {nameof(SemanticKernelPasteProvider)}");
|
||||
|
||||
@@ -19,5 +19,6 @@ namespace Microsoft.PowerToys.Settings.UI.Library
|
||||
Google,
|
||||
AzureAIInference,
|
||||
Ollama,
|
||||
Bedrock,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,6 +31,7 @@ namespace Microsoft.PowerToys.Settings.UI.Library
|
||||
"google" or "googleai" or "googlegemini" => AIServiceType.Google,
|
||||
"azureaiinference" or "azureinference" => AIServiceType.AzureAIInference,
|
||||
"ollama" => AIServiceType.Ollama,
|
||||
"bedrock" => AIServiceType.Bedrock,
|
||||
_ => AIServiceType.Unknown,
|
||||
};
|
||||
}
|
||||
@@ -51,6 +52,7 @@ namespace Microsoft.PowerToys.Settings.UI.Library
|
||||
AIServiceType.Google => "Google",
|
||||
AIServiceType.AzureAIInference => "AzureAIInference",
|
||||
AIServiceType.Ollama => "Ollama",
|
||||
AIServiceType.Bedrock => "Bedrock",
|
||||
AIServiceType.Unknown => string.Empty,
|
||||
_ => throw new ArgumentOutOfRangeException(nameof(serviceType), serviceType, "Unsupported AI service type."),
|
||||
};
|
||||
@@ -72,6 +74,7 @@ namespace Microsoft.PowerToys.Settings.UI.Library
|
||||
AIServiceType.Google => "google",
|
||||
AIServiceType.AzureAIInference => "azureaiinference",
|
||||
AIServiceType.Ollama => "ollama",
|
||||
AIServiceType.Bedrock => "bedrock",
|
||||
_ => string.Empty,
|
||||
};
|
||||
}
|
||||
|
||||
@@ -97,6 +97,18 @@ public static class AIServiceTypeRegistry
|
||||
PrivacyLabel = "AdvancedPaste_Ollama_PrivacyLabel",
|
||||
PrivacyUri = new Uri("https://ollama.org/privacy"),
|
||||
},
|
||||
[AIServiceType.Bedrock] = new AIServiceTypeMetadata
|
||||
{
|
||||
ServiceType = AIServiceType.Bedrock,
|
||||
DisplayName = "Bedrock",
|
||||
IconPath = "ms-appx:///Assets/Settings/Icons/Models/AzureAI.svg",
|
||||
IsOnlineService = true,
|
||||
LegalDescription = "AdvancedPaste_Bedrock_LegalDescription",
|
||||
TermsLabel = "AdvancedPaste_Bedrock_TermsLabel",
|
||||
TermsUri = new Uri("https://aws.amazon.com/bedrock/"),
|
||||
PrivacyLabel = "AdvancedPaste_Bedrock_PrivacyLabel",
|
||||
PrivacyUri = new Uri("https://aws.amazon.com/privacy/"),
|
||||
},
|
||||
[AIServiceType.Onnx] = new AIServiceTypeMetadata
|
||||
{
|
||||
ServiceType = AIServiceType.Onnx,
|
||||
|
||||
@@ -711,6 +711,15 @@ Please review the placeholder content that represents the final terms and usage
|
||||
<data name="AdvancedPaste_Mistral_PrivacyLabel" xml:space="preserve">
|
||||
<value>Mistral Privacy Policy</value>
|
||||
</data>
|
||||
<data name="AdvancedPaste_Bedrock_LegalDescription" xml:space="preserve">
|
||||
<value>Your credentials connect directly to AWS Bedrock services. By setting up this provider, you agree to comply with AWS usage policies and data handling practices.</value>
|
||||
</data>
|
||||
<data name="AdvancedPaste_Bedrock_TermsLabel" xml:space="preserve">
|
||||
<value>AWS Service Terms</value>
|
||||
</data>
|
||||
<data name="AdvancedPaste_Bedrock_PrivacyLabel" xml:space="preserve">
|
||||
<value>AWS Privacy Policy</value>
|
||||
</data>
|
||||
<data name="AdvancedPaste_Ollama_TermsLabel" xml:space="preserve">
|
||||
<value>Ollama Terms of Service</value>
|
||||
</data>
|
||||
|
||||
Reference in New Issue
Block a user