Python(boto3)を用いたAWS利用のためセットアップメモ(S3の起動とAIサービスの利用)
AWSのセットアップ
- AWSに登録
https://aws.amazon.com/
- IAMユーザーコンソールを開く
- グループを作成
# サンプル グループ名:admin ポリシー:AdoministratorAccess
- ユーザーの追加
アクセスキーIDとシークレットアクセスキーをメモ シークレットアクセスキーはこの時しか表示されない
Python環境のセットアップ
AWS CLIをインストール
$ pip install awscli
アクセスキーを設定
$ aws configure
設定事項
AWS Access Key ID [****************]: [アクセスキーID] AWS Secret Access Key [************]: [アクセスキーID] Default region name [ap-northeast-1]: ap-northeast-1 Default output format [json]: json
Boto3をインストール
$ pip install boto3
その他
以下のコマンドでアクセスキーIDとアクセスキーIDを確認できる
$ aws configure get aws_access_key_id
$ aws configure get aws_secret_access_key
S3(Simple Storage Service)の起動
- バケットの作成
import boto3 import random s3 = boto3.client("s3",region_name="ap-northeast-1") bucketName = "mybucket"+str(random.uniform(0,10**5)) #名前空間が共有されているため一意の名前が必要 s3.create_bucket(Bucket=bucketName, CreateBucketConfiguration={'LocationConstraint': 'ap-northeast-1'},)
- 作成されたバケットの確認
s3.list_buckets()
- バケットの削除
s3.delete_bucket(Bucket=bucketName)
AIサービスの利用
AWSが提供する一部のサービスを使ってみた.
- Translate
テキストを翻訳する機能import boto3 translate = boto3.client("translate") text = "こんにちは" result = translate.translate_text(Text=text, SourceLanguageCode="ja", TargetLanguageCode="en") print(result["TranslatedText"])
- Polly
テキストから音声を合成する機能import boto3 import contextlib import os polly = boto3.client("polly") text = "お元気ですか" result = polly.synthesize_speech(Text=text, OutputFormat="mp3", VoiceId="Mizuki") path = "polly_synth.mp3" with contextlib.closing(result["AudioStream"]) as stream: with open("path", "wb") as file: file.write(stream.read()) os.startfile(path)
- Comprehend
自然言語処理を行う機能import boto3 import json comprehend = boto3.client("comprehend", "us-east-2") text = "I'm looking forward to visiting Japan next summer" # 文字列の言語を検出 result = comprehend.detect_dominant_language(Text=text) # 文字列の感情を分析 result = comprehend.detect_sentiment(Text=text,LanguageCode="en") # 文字列の構文を解析 result = comprehend.detect_syntax(Text=text, LanguageCode="en")
参考
Tags: