これまで、ハード大好きでいろいろ触ってきましたが、iPhoneの登場と同等以上にイノベーションを実感するのがChatGPTを含む生成AIです。
2022年のChatGPT登場から1年が経ち、AIエコシステムが勃興し、今のところ勢いが衰えるようには見えません。
GoogleのGemini、AnthropicのClaudeと多くのAIモデルが登場し、本屋では「ChatGPT大全」と銘打った書籍が並ぶようになり、AI活用はエクセル活用術のような、汎用スキルの地位を確立しはじめているように見えます。
そんなAIを使ったアプリを実装するのに役立つLangChainは、AIの文章要約・チャットボット開発などを容易にしてくれるオープンソースソフトウェアです。大規模言語モデルを使ったアプリというと、敷居が高そうに思うかも知れませんが、LangChainをChatGPTの間に挟むことで、簡単にAIアプリを開発できるようになりました。
LangChainを利用してお試しで作った商品紹介文の自動生成プログラム体験をお届けします。ギズモードでコード載せる抵抗はあったけど、こちら。「PlayStation Portal ~」以降の文は公式サイトからのコピペで、ここから紹介文章を生成させてみます(APIキーなどは別途準備が必要です)。
template = PromptTemplate.from_template("""
`次の商品をおすすめする理由3つ`を具体例を用いて説明してください。
- 条件1: 約500文字の日本語で文章を作ってください
- 条件2: `おすすめする理由は`から続けて文章を書いてください
商品: {product}
説明文: おすすめする理由は、
""")
template2 = PromptTemplate.from_template("""
input内容を、記事タイトルのようにキャッチーに仕上げてください
- 条件1: 日本語の文字数で50文字まで
### タイトル作成 ###
{input}
### タイトル作成終了 ###
""")
llm = ChatOpenAI(model_name="gpt-4-1106-preview", temperature=0)
temp1_chain = template | llm | StrOutputParser()
temp2_chain = template2 | llm | StrOutputParser()
chain = {"input": temp1_chain} | RunnablePassthrough.assign(title=temp2_chain)
result = chain.invoke({"product": "PlayStation Portal PlayStation 5のゲームをあなたの手のなかで。PlayStation Portal リモートプレーヤーは、PS5 のゲーム体験を手元で実現するリモートプレイ専用のデバイスです。 アダプティブトリガーやハプティックフィードバックなどのDualSense ワイヤレスコントローラーの主要な機能を備え、8インチ・解像度1080p・60fpsでの描画に対応した液晶ディスプレイは、世界中のゲームクリエイターが生み出す素晴らしいゲームの数々を美麗なグラフィックでお楽しみいただけます。PlayStation PortalがPS5 本体にWi-Fi経由で接続することで、PS5 からゲームプレイをそのまま引き継いでPlayStation Portalでお楽しみいただけます。 ※PlayStation Portal リモートプレーヤーでゲームをプレイするためにはPS5本体と、Wi-Fi接続で最低5Mbps のブロードバンドインターネット接続環境が必要です。よりよいプレイ体験のためには15Mbps 以上の高速な接続環境を推奨します。"})
LangChainを触ってみて、ChatGPTだけではできない、魅力的な機能だと思ったのがChain機能。
このコードでは、Chainsを使うことによって、商品名から、プロンプトAでその商品をおすすめする理由3つを推論させ、プロンプトBへ引き継がせて文脈の整合性をある程度保ったまま、最終的に商品紹介記事のタイトルを出力をしてくれるようになるという、(いまのところ)ChatGPTではできない機能です。
上のコードを実行して出てきた、おすすめする理由3つの原文はこちら。
おすすめする理由は、まず第一に、PlayStation Portal リモートプレーヤーは、PS5の高品質なゲーム体験を携帯可能な形で提供するため、自宅だけでなく外出先でもPS5のゲームを楽しむことができます。
たとえば、出張中のホテルや、通勤・通学の電車内で、いつでもお気に入りのゲームをプレイすることが可能です。
第二に、DualSense ワイヤレスコントローラーのアダプティブトリガーやハプティックフィードバックといった革新的な機能を搭載しているため、手のひらサイズでありながら、PS5本体と同等の没入感と操作感を得られます。例えば、アクションゲームでの緊張感ある銃撃戦や、レーシングゲームでの車の挙動を、よりリアルに感じることができるでしょう。
最後に、8インチの高解像度1080pディスプレイは、60fpsでの滑らかな描画を実現し、美しいグラフィックでゲーム世界を堪能できます。たとえば、広大なオープンワールドを探索する際に、細部にわたる景色の美しさを手元で感じられるのです。これらの特徴により、PlayStation Portalは、PS5のゲームをより自由に、そして快適に楽しむための最適なデバイスと言えるでしょう。
PlayStation Portal、外出先でのプレイはできなくはないですが、快適なプレイはきびしいかな...。
まあいいでしょう、この出力されたおすすめする理由3つの情報をもとに、タイトルを作成してもらいました。
いつでもどこでもPS5体験!「PlayStation Portal」でゲームライフが変わる
まぁまぁまぁ、確かにそうかもしれないな、いかにも機械っぽいなという文章が出力されます。
内容はともかく、コンテンツ制作をする仕事を少しでも楽にしたいと思い作成した数行のコードですが、既存のAIモデルを使ったアプリ実装をしていくのは難しくないんだなぁと、LangChainでできることの強力さを実感しました。
その他、Google検索結果の最新情報を反映させた連携や、AIが独自推論してアクションを行ってくれるAgent機能も使ってみたいけど、時間が…!
個人でもGPUがあれば世界は変わる
LangChainのほかに、画像生成AIのStable DiffusionをWindowsへインストールして遊んでいましたが、ローカルパソコンで動作させる場合、もちろんGPUが必要です。当然のようにNVIDIA RTX搭載パソコンがあれば思う存分に画像生成を楽しめるのは知っていました。
だから、思いっきり楽しむためにRTX 4090買っちゃいましたよね…。2023年で一番高かった買い物です。
2024年以降は、OpenAIのサムアルトマンがちらつかせている汎用型人工知能(AGI)が実現するのか、GPT-5が登場するのか、いずれにしても進化は続いていくので、創造を楽しめる世界は広がるはず。来年もAIを楽しみたいと思います。