Um wrapper da AWS CLI que ajuda a evitar erros e armadilhas comuns com modelos de linguagem grande do Amazon Bedrock, verificando seus argumentos de comando em relação aos documentos de comando.
Como usuário da AWS, às vezes a execução cega de comandos CLI encontrados online ou copiados de fontes como Stack Overflow pode levar a resultados não intencionais, perda de dados, perdas financeiras ou riscos de segurança.
safeaws-cli
permite que você execute comandos da AWS com confiança, aproveitando os modelos de linguagem de IA do Amazon Bedrock para analisar comandos CLI, buscar texto de ajuda e identificar possíveis problemas ou preocupações antes da execução. Ao fornecer uma rede de segurança que mitiga as armadilhas, safeaws-cli
permite que os usuários explorem a AWS com segurança, promovendo uma abordagem mais informada para trabalhar com a CLI.
Mas é claro que executar um modelo GenAI acarreta custos. Avalie antes de usar!
python3 -m pip install boto3
SAFEAWS_BEDROCK_MODEL_ID
. Variável | Descrição | Padrão |
---|---|---|
SAFEAWS_AWS_PROFILE | Perfil AWS a ser usado | None |
SAFEAWS_AWS_REGION | Região AWS a ser usada para o modelo Bedrock | us-east-1 |
SAFEAWS_BEDROCK_MODEL_ID | ID do modelo Bedrock para usar na verificação de IA | anthropic.claude-3-haiku-20240307-v1:0 |
SAFEAWS_ANTHROPIC_VERSION | Versão da API Antrópica | bedrock-2023-05-31 |
SAFEAWS_MODEL_MAX_TOKENS | Máximo de tokens para gerar | 1024 |
SAFEAWS_TEMPERATURE | Temperatura para LLM | 0.5 |
Para autenticação no Amazon Bedrock, embora não seja recomendado, você também pode definir a chave de acesso e a chave secreta da AWS nas variáveis de ambiente AWS_ACCESS_KEY_ID
e AWS_SECRET_ACCESS_KEY
.
Por segurança, é recomendado configurar uma sso-session
e usar a variável de ambiente AWS_PROFILE
para autenticar.
#! /bin/bash
sudo curl https://raw.githubusercontent.com/gabrielkoo/safeaws-cli/main/safeaws.py
-o /usr/local/bin/safeaws &&
sudo chmod +x /usr/local/bin/safeaws
Para usar safeaws-cli
, basta prefixar seu comando AWS CLI com safeaws
:
safeaws <aws-cli-command>
Por exemplo:
> safeaws s3 cp file.txt s3://my-bucket/path/
The provided command appears to be correct and complete. However, here are a few points to consider:
1. Ensure that the file 'file.txt' exists in the local directory from where the command is being executed.
2. Verify that the S3 bucket 'my-bucket' and the 'path/' prefix exist, and that you have the necessary permissions to upload the file to that location.
3. Consider adding the '--acl' parameter to set the appropriate access control list (ACL) for the uploaded object, if required.
4. Evaluate whether any additional metadata, such as content-type or cache-control, should be set for the uploaded object using the respective parameters.
5. Assess if the default storage class ('STANDARD') is appropriate for your use case, and consider using a different storage class if necessary.
Do you want to execute the command? (y/N) y
<Execution results shown here>
O script irá buscar o texto de ajuda para o comando AWS CLI fornecido, enviá-lo junto com os argumentos do comando para o modelo Bedrock especificado e exibir quaisquer problemas ou preocupações potenciais identificados pela IA. Você será solicitado a confirmar se deseja executar o comando ou não.