スキップしてメイン コンテンツに移動

投稿

RSSからYoutube/Podcast配信

最近の投稿

StableDiffusionを使った画像生成&動画生成

  StableDiffusionが世を賑わかせているので、便乗してニュースのテキストから画像を生成し、TTSの音声と併せて動画にしてみた。 まずは画像生成用のモジュールから。 ! pip install accelerate diffusers transformers scipy ftfy # make sure you're logged in with `huggingface-cli login` from  torch  import  autocast from  diffusers  import  StableDiffusionPipeline import  gc SDpipe = StableDiffusionPipeline.from_pretrained (      "stabilityai/stable-diffusion-2" ,     use_auth_token= "enter your token" ) .to ( "cuda" ) def   getImgFromPrompt ( prompt , imgName ) :     gc.collect ( generation= 0 )     gc.collect ( generation= 1 )     gc.collect ( generation= 2 )     image = SDpipe ( prompt , height= 512 ,  width= 512 ) .images [ 0 ]     display ( image )     image.save ( imgName ) 上記で以下のpromptを入れてみた。 Exclusive: JPMorgan looking to finance Italy's Serie A for up to 1 billion euros | Reuters  Sassuolo v AC Milan - Mapei Stadium - Citta del Tricolore, Reggio Emilia, Italy - May 22, 2022 AC Milan's Alessio Romagnoli lifts the tro

GPT-3を使った翻訳・要約

GPT-3とは 「Generative Pre-trained Transformer - 3」の略で、イーロン・マスクなどが出資しているOpenAIという団体が出している自然言語処理モデルになります。 以前までは予約しないと使えないものでしたが、今はアカウントを作成すれば誰でも使用することができるようになったので、この翻訳・要約機能を試してみました。 OpenAIのアカウントを作成 Googleアカウントでログインできるため、Googleアカウントを持っている方ならそのまま「Continue with Google」で入ってください。 このままPlaygroundで遊んでも良いですが、Pythonプログラムに使用するため、以下のURLから「Create New Secret Key」を押してAPI-Keyを作成しておいてください。 https://beta.openai.com/account/api-keys Pythonライブラリ openaiのライブラリやこれまでのRSSリーダー機能に必要なライブラリもインストールします。 $ pip install openai feedparser extractcontent3 Pythonプログラム RSSからURLを取得してHTML本文を取得する箇所に関しては以前のものを使いまわします。要約・翻訳のサンプルはPlaygroundから見れますがこれを少し手を加えつつ、パラメータをチューニングしておきました。 # coding: utf-8 import  os import  openai import  requests import  feedparser from  extractcontent3  import  ExtractContent openai.api_key =  "YourOpenAI-API-Key" extractor = ExtractContent () # オプション値を指定する opt =  { "threshold" : 50 } extractor.set_option ( opt )      def   openaiApi ( cmd ) :     response = openai.Completion.create (    

Blogger自動投稿

GCP連携を使って自動投稿 Blogger APIを使用することでプログラムからBloggerへ投稿できるようになります。 この作業には GCPとBloggerの連携 の手続きが先に必要です。 Pythonライブラリの追加 $ pip install google-api-python-client $ pip install google-auth-httplib2 $ pip install google-auth-oauthlib $ pip install google-cloud-translate Pythonプログラム RSSのタイトルと内容をBloggerへ記事をポストするプログラムを作成します。 test.py # coding: utf-8 import feedparser import requests import os import pickle from extractcontent3 import ExtractContent from apiclient.discovery import build from apiclient.errors import HttpError from apiclient.http import MediaFileUpload from google_auth_oauthlib.flow import InstalledAppFlow from google.auth.transport.requests import Request extractor = ExtractContent () # オプション値を指定する opt = { "threshold" : 50 } extractor . set_option ( opt ) TOKEN_PICKLE = 'token.pickle' CLIENT_SECRETS_FILE = "client_secret.json" TRANS_REQUEST_SCOPE = "https://www.googleapis.com/auth/cloud-translation"

PodCastでの音声配信

PodCastでの音声配信 Fire Base Hostingを使用してのPodCast配信 静的コンテンツ配信にFire Base Hostingが使えそうなので、ここからRSSフィードとmp3音声ファイルを配信します。 以前のBlogger連携と同様にFirebaseのAPIも管理できるように変更してください。 Fire Base Hostingの設定 Fire Baseコンソールにアクセスしてプロジェクトを作成します。 またプロジェクト内に入り「+アプリを追加」をクリックして、次に(</>)をクリックしてWebアプリケーションの設定ワークフローを起動します。 FireBaseHostingを有効にして、指示された通りにnpmを実行していくと、プロジェクトとアプリが作成されます。 作成が終わると表示されるプロジェクトの設定画面にあるプロジェクト-IDをプログラムの中で使うので覚えていてください。 また[プロジェクトの設定] > [サービス アカウント] を開きます。 [新しい秘密鍵の生成] をクリックし、[キーを生成] をクリックして確定します。 キーを含む JSON ファイルを「firebase.json」ファイルとして保管します。 ライブラリの追加 $ pip install firebase_admin Pythonプログラム test.pyに以下のコードを記述します。 公式のサンプルを一部変更して持ってきています。 test.py FIREBASE_SECRETS_FILE = "./firebase.json" FIREBASE_HOSTING_URL = "https://firebasehosting.googleapis.com/v1beta1" FIREBASE_HOSTING_SITE = FIREBASE_HOSTING_URL + "/sites/project-id" def fb_getToken (): cred = credentials . Certificate ( FIREBASE_SECRETS_FILE ) token = cred . get_access_token () r