Class AzureContainerAppsCodeInterpreterService
- Namespace
- FoundationaLLM.Context.Services
- Assembly
- FoundationaLLM.Context.dll
Provides a code session service that uses Azure Container Apps Dynamic Sessions to execute code.
public class AzureContainerAppsCodeInterpreterService : AzureContainerAppsServiceBase, ICodeSessionProviderService
- Inheritance
-
AzureContainerAppsCodeInterpreterService
- Implements
- Inherited Members
- Extension Methods
Constructors
AzureContainerAppsCodeInterpreterService(IHttpClientFactory, IOptions<AzureContainerAppsCodeInterpreterServiceSettings>, ILogger<AzureContainerAppsCodeInterpreterService>)
Provides a code session service that uses Azure Container Apps Dynamic Sessions to execute code.
public AzureContainerAppsCodeInterpreterService(IHttpClientFactory httpClientFactory, IOptions<AzureContainerAppsCodeInterpreterServiceSettings> options, ILogger<AzureContainerAppsCodeInterpreterService> logger)
Parameters
httpClientFactory
IHttpClientFactoryThe factory used to create HttpClient instances.
options
IOptions<AzureContainerAppsCodeInterpreterServiceSettings>The options for the Azure Container Apps code execution service.
logger
ILogger<AzureContainerAppsCodeInterpreterService>The logger used for logging.
Properties
ProviderName
Gets the name of the code session provider.
public string ProviderName { get; }
Property Value
Methods
CreateCodeSession(string, string, string, string, string, UnifiedUserIdentity)
Creates a new code session.
public Task<CreateCodeSessionResponse> CreateCodeSession(string instanceId, string agentName, string conversationId, string context, string language, UnifiedUserIdentity userIdentity)
Parameters
instanceId
stringThe unique identifier of the FoundationaLLM instance.
agentName
stringThe name of the agent for which the code execution session is created.
conversationId
stringThe unique identifier of the conversation.
context
stringThe context in which the code execution session is created. This is usually the name of the agent tool, but it is not limited to that.
language
stringThe code session programing language.
userIdentity
UnifiedUserIdentityThe UnifiedUserIdentity providing the user identity information.
Returns
- Task<CreateCodeSessionResponse>
A CreateCodeSessionResponse object with the properties of the code execution session.
DeleteCodeSessionFileStoreItems(string, string)
Deletes all files from a code session.
public Task DeleteCodeSessionFileStoreItems(string codeSessionId, string endpoint)
Parameters
codeSessionId
stringThe identifier of the code session.
endpoint
stringThe endpoint of the code session service.
Returns
DownloadFileFromCodeSession(string, string, string, string)
Downloads a file from a code session.
public Task<Stream?> DownloadFileFromCodeSession(string codeSessionId, string endpoint, string fileName, string filePath)
Parameters
codeSessionId
stringThe identifier of the code session.
endpoint
stringThe endpoint of the code session service.
fileName
stringThe name of the file to download.
filePath
stringThe path to the file to download.
Returns
GetCodeSessionFileStoreItems(string, string)
Lists files from a code session.
public Task<List<CodeSessionFileStoreItem>> GetCodeSessionFileStoreItems(string codeSessionId, string endpoint)
Parameters
codeSessionId
stringThe identifier of the code session.
endpoint
stringThe endpoint of the code session service.
Returns
- Task<List<CodeSessionFileStoreItem>>
The list of file paths from the code session.
UploadFileToCodeSession(string, string, string, Stream)
Uploads a file to a code execution session.
public Task<bool> UploadFileToCodeSession(string codeSessionId, string endpoint, string fileName, Stream fileContent)
Parameters
codeSessionId
stringThe identifier of the code session.
endpoint
stringThe endpoint of the code session service.
fileName
stringThe name of the file to upload.
fileContent
StreamThe stream containing the binary content of the file to upload.