メインコンテンツへスキップ
見出し画像

ChatGPT × マイクロソフトパワーポイント-自動作成

    ChatGPTの回答を直接Microsoft Powerpointに連携し、自動でパワーポイントを作成できないか考えて色々と調べてみました。Pythonでpython-pptxというライブラリを使用すれば出来ることがわかりましたので、つらつらと書いていきます。


    今回使用するコードを利用しますと、下記のようなファイルが作成できます。


    画像
    今回作成する成果物例



    今回使用するコードは、test.pyとして作成します。

    import os
    import openai
    
    #Import the required libraries for powerpoint
    import collections
    import collections.abc
    from pptx import Presentation
    
    #Set the API Key
    openai.api_key="Your-API-Key"
    
    #Set the model
    openaimodel="gpt-3.5-turbo"
    
    #Initialize the presenetaion
    prs = Presentation()
    title_slide_layout = prs.slide_layouts[1]
    slide = prs.slides.add_slide(title_slide_layout)
    title = slide.shapes.title
    subtitle = slide.placeholders[1]
    
    #prompt
    prompt="OpenAIとは、どういう組織ですか?"
    
    #Process of OpenAI
    response1=openai.ChatCompletion.create(
                model=openaimodel,
                messages=[
                    {"role":"user", "content": f"{prompt} 100文字以内で回答せよ。"}
                ]
                )
    responseOpenAI=response1['choices'][0]['message']['content']
    
    
    title.text = f"{prompt}"
    subtitle.text = f"{responseOpenAI}"
    
    prs.save('test.pptx')


    test.pyの留意点は、以下です。

    • Your-API-Keyには、OpenAIで取得したAPIキーを記載してください。

    • pptxを使うために、from pptx import Presentationの前に、必ずimport collectionsとimport collections.abcを記載してください。

    • ChatGPTの回答が長すぎるとパワーポイントからはみ出してしまうので、100文字以内に限定しております。文字のフォントを小さくする方法で回避する方法も調べればあります。


    次に、requirements.txtとして、以下を作成してください。

    openai
    python-pptx


    ここまで、準備が出来ましたら、自分のPC環境で以下を実行していきます。

    python -m venv venv
    venv\Scripts\Activate
    pip install -r requirements.txt
    python test.py


    上記を実行しますと、実行ディレクトリに、test.pptxというファイルが出来上がっていますので、確認してみましょう。

    今回、このコードを実行したら、下記のパワーポイントが出来上がっていました。


    画像
    test.pptx


    今回は簡単な自動パワーポイント作成となりますが、文字のフォントサイズや、枚数変更なども出来ますので、調べていきたいです。

     
     
    最新の海外のAI事例を、ChatGPT、AI、Generative AI、GitHub、Hugging Faceなどから実際に手を動かしてから紹介しています。記事作成の励みになりますので、フォロー頂ければ幸いです。

    あなたへのおすすめ