| 1234567891011121314151617181920212223242526272829303132 |
- import boto3
- from openhands.core.logger import openhands_logger as logger
- def list_foundation_models(
- aws_region_name: str, aws_access_key_id: str, aws_secret_access_key: str
- ) -> list[str]:
- try:
- # The AWS bedrock model id is not queried, if no AWS parameters are configured.
- client = boto3.client(
- service_name='bedrock',
- region_name=aws_region_name,
- aws_access_key_id=aws_access_key_id,
- aws_secret_access_key=aws_secret_access_key,
- )
- foundation_models_list = client.list_foundation_models(
- byOutputModality='TEXT', byInferenceType='ON_DEMAND'
- )
- model_summaries = foundation_models_list['modelSummaries']
- return ['bedrock/' + model['modelId'] for model in model_summaries]
- except Exception as err:
- logger.warning(
- '%s. Please config AWS_REGION_NAME AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY'
- ' if you want use bedrock model.',
- err,
- )
- return []
- def remove_error_modelId(model_list):
- return list(filter(lambda m: not m.startswith('bedrock'), model_list))
|