aidial_adapter_bedrock/embeddings.py (22 lines of code) (raw):

from aidial_sdk.embeddings import Embeddings, Request, Response from aidial_adapter_bedrock.adapter_deployments import ( AdapterEmbeddingsDeployment, ) from aidial_adapter_bedrock.aws_client_config import AWSClientConfigFactory from aidial_adapter_bedrock.llm.model.adapter import get_embeddings_model from aidial_adapter_bedrock.server.exceptions import dial_exception_decorator class BedrockEmbeddings(Embeddings): deployment: AdapterEmbeddingsDeployment def __init__(self, deployment: AdapterEmbeddingsDeployment) -> None: self.deployment = deployment @dial_exception_decorator async def embeddings(self, request: Request) -> Response: aws_client_config = await AWSClientConfigFactory( request=request ).get_client_config() model = await get_embeddings_model( deployment=self.deployment, api_key=request.api_key, aws_client_config=aws_client_config, ) return await model.embeddings(request)