Mythosia.Azure 1.1.1

dotnet add package Mythosia.Azure --version 1.1.1                
NuGet\Install-Package Mythosia.Azure -Version 1.1.1                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Mythosia.Azure" Version="1.1.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Mythosia.Azure --version 1.1.1                
#r "nuget: Mythosia.Azure, 1.1.1"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Mythosia.Azure as a Cake Addin
#addin nuget:?package=Mythosia.Azure&version=1.1.1

// Install Mythosia.Azure as a Cake Tool
#tool nuget:?package=Mythosia.Azure&version=1.1.1                

Package Description

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Mythosia.Azure:

Package Downloads
Mythosia.AI

## Package Summary The `Mythosia.AI` library provides an abstraction for various AI models, including support for **OpenAI GPT-4** and **Anthropic Claude** models. This library allows easy interaction with AI services, enabling both synchronous completion and streaming capabilities for models like GPT-3.5, GPT-4, Claude, and more. This library abstracts the HTTP requests required to communicate with the APIs and provides a unified interface for various AI models, making it easier to integrate into any C# or ASP.NET Core project. ### Supported Models - OpenAI GPT-4o and GPT-4o-mini - OpenAI GPT-4 Turbo - Claude 3.x variants (Claude 3.5 Sonnet (2024-10-22), Claude 3.5 Haiku, Claude 3 Opus, Claude 3 Haiku) ### Key Features - Synchronous completion and streaming support for AI models - Customizable model selection, temperature, and max tokens - Abstraction over the complexity of managing HTTP requests and responses - Extendable structure for adding support for new AI models ## How to Use To use this library, create an instance of either `ChatGptService` or `ClaudeService` depending on the AI model you're working with. Here's an example: var httpClient = new HttpClient(); // For GPT-based completion var chatGptService = new ChatGptService("your_openai_api_key", httpClient); chatGptService.SystemMessage = "cuty"; // Optional system message string gptResponse = await chatGptService.GetCompletionAsync("What is the weather today?"); var httpClient = new HttpClient(); Streaming Responses The library also supports streaming responses for real-time interaction. Here's an example of how to use the streaming feature: await chatGptService.StreamCompletionAsync("Tell me a joke", content => { Console.WriteLine(content); // Streamed content in real time });

Mythosia.Azure.Storage.Blobs

**New Features**: This update introduces an extension method to automatically convert strings into valid Azure Blob Storage container names. Azure Blob Storage imposes strict naming rules requiring lowercase letters, numbers, and hyphens, with specific constraints on hyphen placement and name length. This new feature ensures that container names comply with these rules by transforming arbitrary input strings into valid container names seamlessly. **Key Benefits**: - Converts camelCase or PascalCase strings to lowercase with hyphens automatically. - Replaces disallowed characters with hyphens, ensuring valid naming conventions. - Handles name length constraints (minimum 3 characters, maximum 63 characters). - Simplifies compliance with Azure Blob Storage naming standards, reducing errors and improving consistency. **Usage Example**: ```csharp using Mythosia.Azure.Storage.Blobs; // Convert a string to a valid container name string validName = "PhonoMaster@123".ToBlobContainerName(); // Output: "phono-master-123" ```

Mythosia.Azure.AI

Mythosia.Azure.AI - AssistantAI Client Library Mythosia.Azure.AI provides an easy-to-use client library for interacting with Azure OpenAI Assistants. This library integrates the power of Azure's AI services, allowing you to create and manage assistant threads, send user inputs, and retrieve assistant-generated responses in an asynchronous manner. It also includes support for managing sensitive credentials using Azure Key Vault. Features: Assistant Management: Easily create and manage Azure OpenAI Assistants and conversation threads. Message Handling: Send user input to the assistant, run conversations asynchronously, and retrieve the assistant’s responses. Azure Key Vault Integration: Safely manage your endpoint and key secrets using Azure Key Vault with SecretFetcher. Lazy Initialization: Efficient resource management with lazy initialization for both assistant and thread objects. Custom Search Index Integration: The SearchIndexClient enables advanced integration with Azure Search if needed. Key Classes: AssistantAI: Core class for interacting with Azure OpenAI Assistants. You can initialize the assistant using either Key Vault secrets or connection strings. SecretFetcher: Utility class for retrieving sensitive information such as API keys and connection strings from Azure Key Vault. Example Usage: // Using Key Vault secrets to initialize the AssistantAI var assistantAI = new AssistantAI(endpointSecretFetcher, keySecretFetcher, assistantOptions); // Using direct connection string and key to initialize the AssistantAI var assistantAI = new AssistantAI("https://my-endpoint", "my-api-key", assistantOptions); // Run a conversation with the assistant string response = await assistantAI.RunAsync("Hello, how can you assist me?"); Console.WriteLine(response); // Start a new thread and run a conversation string newThreadResponse = await assistantAI.RunOnNewThreadAsync("Start a new session"); Console.WriteLine(newThreadResponse);

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.1.1 151 10/21/2024
1.1.0 136 9/22/2024
1.0.0 191 9/5/2024