🗞️

生成AI週報(10/21~10/27)

2024/12/01に公開

alt text

こんにちは、ナウキャストでLLMエンジニアをしているRyotaroです。
10/21~10/27で収集した生成AIに関連する情報をまとめています。

※注意事項

内容としては自分が前の週に収集した生成AIの記事やXでの投稿・論文が中心になるのと、自分のアンテナに引っかかった順なので、多少古い日付のものを紹介する場合があります

それでは行きましょう

ひとこと

今回も遅れ気味でした…そろそろちゃんと更新できるようにします笑
1ヶ月前の情報でも古いと感じるこの頃ですが、今週も生成AI関連の情報をまとめていきます!

Constella

Constellaは、個人の知識管理と生産性向上を目的としたアプリケーションで、特にメモの取り方や情報の整理方法に革新をもたらすことを目指しています。シリコンバレーの起業家Tejas Sharmaによって開発され、AI技術を活用した高度な機能が特徴です。

主要な特徴

とても簡単に言うと、グラフ優先の UI でメモを管理するアプリです。
メモを書くときに、そのメモをどのメモとつながるかを考えることで、グラフィカルにメモを整理することができます。
メモの配置はユーザーが自由に変更できますが、検索などを行うと、その後自動でAIによって整理されます。

alt text
出典: https://www.constella.app/ja

また、内蔵されたAIチャットボット「Stella」がノートや画像、ファイルを簡単に検索し、ユーザーが必要とする情報を迅速に提供します。

alt text

さらにメモに対する検索も可能です。
検索方法は keyword search と、similarity search、そして hybrid search の3種類があります。
試しに「料理」というキーワードで検索すると、ちゃんとそれに関連するメモが表示されます。

alt text

メモでかけること

ボード上をクリックすることでメモを作成することができ、ノードがUI上で表示されます。
markdown がサポートされており、基本的なテキストエディタのようにメモを書くことができます。

alt text

画像も貼れますね

alt text

さらにタグをつけることができ、メモの整理に役立ちます。

alt text

使ってみて

使ってみた感触としては、一人で思考を整理するためのmiroのようなツールで、各紐付けが簡単にできるのと、検索ができるのが良さそうだなと思いました。
ただ、グラフィカルな点を重視しているので、ちゃんと内容を書き込むんで、情報を整理するには向いて無いです(もともとグラフでそういうのを整理するので当然と言えば当然ですが…)。なのでちょっと使いこなすまで時間かかりそうです。

一応公式には、use case がまとまっています

https://www.wiki.constella.app/docs/use-cases/general

初めは1週間くらい無料トライアルできるので、試しに使ってみるのが良いと思います。

参考資料

https://www.constella.app/ja
https://www.wiki.constella.app/docs/getting-started
https://note.com/chaen_channel/n/nc82c9f162737
https://www.wiki.constella.app/docs/use-cases/general

Napkin

Napkin AIは、ユーザーが入力したテキストを基に、自動的に視覚的コンテンツ(グラフ、フローチャート、図解など)を生成するAIツールです。このツールは、特にプレゼンテーション資料や報告書の作成に役立ち、従来はデザイナーや専門家に依存していた図解作成を、誰でも簡単に行えるようにします。2024年9月より日本語にも対応し、日本での使い勝手がさらによくなりました。

特徴はなんといっても、その視覚的コンテンツの自動生成機能とそのクオリティです!
画像生成というよりは、テキストをもとにした図解生成という感じで、生成されたグラフやフローチャートなどの図は、ユーザーが編集可能です。あらかじめ多くの図解フォーマットが用意されていて、ユーザーが入力するテキスト情報から適切な図解フォーマットを選択してドキュメントに追加してくれます。

たとえばこの図だと、4分割されたブロックを増やしたり減らしたり、中の図を変えたりラベルを変えたりすることができます。
普通に綺麗ですよね。ちなみに色も変えられます。

alt text

alt text

使い方

napkin を使うには初めにログインする必要があります。(Google か email でログイン可能)

New Napkin を押すと、AIで作るか、自分で作るかを選択して、まずはドキュメントを作ります。

alt text
出典: https://www.napkin.ai/

すると、google docs のようなドキュメントが作成されます。

alt text

初めは図解がないですが、テキストのブロックから左の「⚡️」を押すと、図解が生成されて、メニューからどのフォーマットかを選ぶことができます。結構豊富にありどれもデザインかなりいいです。

alt text

複数のテキストブロックを選択して、図解を生成することも可能です。

alt text
alt text

共有

そして、右上の共有ボタンから、ドキュメントを共有することができます。
link を共有するか、pdf に変換して共有するか選べる感じですね。

alt text

ドキュメント全体でなくても、作成した図解をダウンロードすることもできるので、それを使って自分でドキュメントを作るというのも良さそうです。

alt text

価格

今のところ Starter プランも Pro プランも無料で使えるので、使えるときに使ってみるのが良いと思います。

alt text
出典: https://www.napkin.ai/pricing/

使ってみて

9月くらいから話題になっていたので、気になっていましたがかなりいいと思いました。
そこそこ作り込まれたデザインの図解をサクッと作れるのはかなり便利そうです。

参考資料

https://www.napkin.ai/
https://www.napkin.ai/pricing/

Felo

Felo AIは、日本発のAI検索エンジンで、東京に拠点を置くスタートアップ企業 Sparticle 株式会社によって開発されました。この検索エンジンは、生成AI技術を活用し、多言語対応の高度な検索機能を提供しています。

AIを使った検索エンジンで、自然言語で検索でき、ソースとともに回答してくれます。このあたりは Perplexity や Genspark と同じですね。

alt text
出典: https://felo.ai/ja/search

ただ、Felo の場合は、ここからプレゼンテーションを作成することができます。
作り方は「プレゼンテーションを生成」を押すだけです。するとプレゼンの構造を提案してくれ、編集することが可能です。

alt text

mind map で表示することも可能、、、これはすごい

alt text

そして、Next を押してデザインを指定すると、その構造に沿ったPPT形式のプレゼンテーションが生成されます。結構デザイン豊富ですね。

alt text

生成されたプレゼンテーションは、ダウンロードして編集することが可能ですし、Felo のサイト上でも編集することが可能です。これもかなり便利そうです。

alt text

おまけに、スライドショーまで表示できるので、PowerPoint がなくても発表できるのは便利すぎます!

alt text

生成結果は、初めの検索エンジンの結果に表示されるので、そこからもアクセスできます。

alt text

共有

共有方法はかなりたくさん用意されており、あらかじめポスター形式で用意されています。

alt text

しかも生成したプレゼン資料は、Canva と連携してそこから編集することができるようになっていました!これはありがたい!

alt text

設定

設定では、おもに回答の生成をするモデルを GPT4O 以外にも選択できます。無料版では GPT4O しか選べないですが、Pro 版では GPT4O-mini や Claude 3.5 Sonnet なども選べるようです。

alt text
出典: https://felo.ai/ja/settings

あとはシステムプロンプトを埋め込むこともできるみたいですね
alt text
出典: https://felo.ai/ja/settings

価格

グレードは Standard と Pro があり、Pro は Standard の機能に加えて、プロフェッショナル検索の回数制限が5回から300回まで増えます。プレゼンテーション生成は無料版でもできるみたいですね。

alt text
出典: https://felo.ai/ja/settings

使ってみて

プレゼンテーション生成の機能のレベルの高さに驚嘆しました。簡単なプレゼン資料作るならこれだけで事足りるような気がします。Canva と連携しているのもかなり便利です。

参考資料

https://felo.ai/ja/search
https://felo.ai/ja/settings

Claude Computer Use

Anthropic が コンピューターのデスクトップ環境を LLM によって操作できるようになる Computer Use という機能をリリースしました。これにより検索や情報の整理などのタスクが LLM によって自動で行えるようになります。

現時点(2024/11/30)では、Public Beta 版となっており、動作自体もまだまだ不安定ですが、これからの発展が楽しみな機能です。

https://youtu.be/ODaHJzOyVCQ

手順

実際に使うための手順としては簡単に言うと、Docker起動 → ブラウザで localhost:8080 にアクセス → streamlit の chat 画面で指示する、といった感じです。

alt text
出典: https://note.com/masaland/n/n29801871173e

実際に試している方の動画はこちらです。chat を通して検索が自動化されるのがわかります。

https://www.youtube.com/watch?v=bdzlYq-WBjM

仕組み

仕組みは Claude のマルチモーダル LLM がスクリーン上の画像を視覚的に理解して、あらかじめ用意されている操作ツール(Anthropic-defined tools)を使って、ユーザーの指示を実行するというものです。

  • Computer tool
    • マウスクリックやカーソル移動
  • Text editor tool
    • ファイル作成・編集・削除など
  • bash tool
    • CLI コマンドの実行

Anthropicが提供するデモ用コードは、Docker環境でのみ「Computer Use」機能を体験できる仕様となっていますが、以下のOpen Interpreterを利用すれば、ローカルのMacやWindowsパソコンでも体験が可能です。

所感

所感は RPA ツールのもっと汎用的で、自由に指示ができるツールな印象を受けました。ただまだ実用的に使えるほど安定していない & 遅いので、まだまだこれからかなと思います。
あとは github の cation に記載のある通り、コンピューターを使用してインターネットとやり取りをすることがあり、一定のリスクがあるので、慎重に使う必要がありますね。
いずれにせよ、これからの発展が楽しみです。

参考資料

https://github.com/anthropics/anthropic-quickstarts/tree/main/computer-use-demo
https://docs.anthropic.com/en/docs/build-with-claude/computer-use
https://note.com/masaland/n/n29801871173e
https://zenn.dev/givery_ai_lab/articles/4409237311836d
https://x.com/givery_ai_lab/status/1851922971797131783

v0 python 実行可能に

chat でフロントのコードを生成して、UI/UXまで表示してくれる v0 ですが、今度は python のコードを実行してくれるようになりました。
ChatGPT の Data Analysis でも同じようなことができますが、コードエディターが見れる & 編集できるので個人的にはこっちの方が便利そうだなと思いました!

alt text
出典: https://v0.dev/

ただまだ依然として不安定で、ライブラリが不足していたり、コードがうまく実行できないことがあります。そのあたりは試行錯誤していく必要がありそうですね。

使ってみる

v0にアクセスして、データ分析を python にやってもらいましょう。今回はe-Stat から「男女別人口-全国,都道府県(大正9年~平成27年)」という統計データを download して、そのデータを使って分析してみます。

alt text

生成されたコードを見ると、添付したCSVファイルは、以下のようにURLでデータをロードすることが可能になりました。どうやら、vercelストレージに保存されているようです。

import pandas as pd
import matplotlib.pyplot as plt
from io import StringIO
import requests

# CSVファイルをダウンロード
url = "https://hebbkx1anhila5yf.public.blob.vercel-storage.com/c01-2jSWnsZ9rGitElc9J6ioGiTmdbK7C8.csv"
....
コード全文
import pandas as pd
import matplotlib.pyplot as plt
from io import StringIO
import requests

# CSVファイルをダウンロード
url = "https://hebbkx1anhila5yf.public.blob.vercel-storage.com/c01-2jSWnsZ9rGitElc9J6ioGiTmdbK7C8.csv"
response = requests.get(url)
csv_content = StringIO(response.text)

# pandasでCSVを読み込む
df = pd.read_csv(csv_content)

print("データの基本情報:")
print(df.info())

print("\nデータの先頭5行:")
print(df.head())

print("\n基本統計量:")
print(df.describe())

# 数値データの列名を取得
numeric_columns = df.select_dtypes(include=['int64', 'float64']).columns

# 相関行列を計算
correlation_matrix = df[numeric_columns].corr()

print("\n相関行列:")
print(correlation_matrix)

# データの可視化
plt.figure(figsize=(10, 6))
df[numeric_columns].boxplot()
plt.title('Numeric Columns Boxplot')
plt.savefig('/tmp/boxplot.png')
plt.close()

print("\nBoxplotを '/tmp/boxplot.png' に保存しました。")

# ヒストグラム
df[numeric_columns].hist(figsize=(12, 8))
plt.tight_layout()
plt.savefig('/tmp/histograms.png')
plt.close()

print("ヒストグラムを '/tmp/histograms.png' に保存しました。")

print("\nデータ分析が完了しました。")

すると、右下に今まではなかった「Run Code」ボタンが表示されます。これを押すと、python のコードが実行され、結果が表示されます。

alt text

実行すると、グラフが出てきました。ただ、高確率で文字化けが発生します。その時は chat に「グラフの日本語部分を英語に直して、グラフを表示していただけますか?」みたいな感じで指示してあげると直ります。

alt text

あれ、なんかエラーが出てる。。。

ModuleNotFoundError: No module named 'japanize_matplotlib'

再度 chat で「pip install japanize-matplotlib」と指示してあげると、

# Install required packages
subprocess.check_call([sys.executable, "-m", "pip", "install", "pandas", "matplotlib", "requests", "japanize-matplotlib"])

というコードが生成され、それを実行すると、、、、今度は次のエラーが

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x93 in position 1: invalid start byte

また、chatに投げてみます。

alt text

直ってますね。何故かグラフが増えてますが、一旦これでいいでしょう。
こんな感じに chat するだけで、python のコードを実行してくれました。

所感

chatgpt の data analysis よりは比較的エンジニア向けで、コードエディターが見れるので、コードの編集も可能です。ただ、これくらいのコードであれば cursor の composer とかで作った方が正確だし早い気がするので、そこまで便利さはないかなと思いました。(まだ真髄に気づいていないだけの可能性は100%あります…)
とはいえ、放っておいたらできるし、vercel にデプロイする v0 の強みとか、react との連携とかもできるとその辺は強みが出てきそうだなと思います!

参考資料

https://x.com/sora19ai/status/1850036208199709178
https://note.com/rrenzokutai/n/n07fb037fae28

GPT-Engineer

GPT-Engineer は、v0 や claude artifact、ChatGPT Canvas のような chat を使ってアプリを作るツールです。(v0 が一番近い気がします)

特徴は app 開発に特化していることです。それ以外のツールは、もともと chat することがメインで、だんだん UI に表示できるようになってきた、というイメージですが、GPT-Engineer は app 開発にフォーカスしていて、モバイル preview モードがあったり、supabase や github と連携することができるようになっています。

試しに次のようなプロンプトでアプリを作ってみます。

Certainly! I'll create a prompt in English for generating a landing page (LP) for cosmetics using GPTEngineer. This prompt will aim to create a comprehensive and attractive LP for a cosmetics brand.
Here's a comprehensive prompt for creating a cosmetics landing page:
"Create a landing page for a luxury cosmetics brand called 'Lumière Élégance'. The page should have the following sections and features:
Header:
Logo: A stylized 'LE' in gold
Navigation menu: Home, Products, About Us, Contact
Hero Section:
Headline: 'Reveal Your Natural Radiance'
Subheadline: 'Discover the power of French skincare science'
Background: High-quality image of a woman with glowing skin
CTA button: 'Shop Now' (in gold color)
Product Showcase:
Feature 3 best-selling products: 'Radiance Serum', 'Hydra-Lift Cream', and 'Gentle Cleansing Foam'
Each product should have:
Product image
Brief description (2-3 sentences)
Price
'Add to Cart' button
Benefits Section:
Title: 'Why Choose Lumière Élégance?'
List 4 key benefits:
'Scientifically Formulated'
'Luxurious Textures'
'Visible Results in 2 Weeks'
'Cruelty-Free and Vegan'
Each benefit should have an icon and a short description
Customer Testimonials:
Include 3 customer reviews with profile pictures, names, and short quotes
Ingredients Spotlight:
Highlight 3 key ingredients used in the products
Each ingredient should have an image, name, and brief explanation of its benefits
Limited Time Offer:
Create a section for a special promotion: '20% Off Your First Purchase'
Include a countdown timer and a CTA button: 'Claim Offer'
Newsletter Signup:
Add a form to capture email addresses
Offer incentive: 'Subscribe for exclusive offers and beauty tips'
Footer:
Links to social media profiles
Quick links (Privacy Policy, Terms of Service, Shipping Information)
right information
Design Guidelines:
Color scheme: Gold, white, and soft pink
Font: Elegant serif for headings, clean sans-serif for body text
Overall style: Minimalist and luxurious
Ensure the page is responsive and optimized for mobile devices. Use high-quality stock images for product and model photos. Implement smooth scrolling and subtle animations for a premium feel."
This prompt provides a comprehensive structure for a cosmetics landing page, covering all essential elements such as product showcase, benefits, testimonials, and call-to-action sections. It also includes design guidelines to ensure a cohesive and attractive look. You can modify or expand this prompt based on specific needs or preferences for the cosmetics brand.

出典: https://jitera.com/ja/insights/38837

すると、、、めちゃめちゃ綺麗な化粧品のLPが生成されました!

alt text

右上の「Mobile Preview」を押すと、モバイルでも見ることができます。

alt text

右上の「Publish」から deploy ボタンを押すと、簡単に web に公開することもできます!この辺りは v0 と同じですね。

参考資料

https://lovable.dev/
https://jitera.com/ja/insights/38837
https://x.com/ai_studenttt/status/1850077774243119331

関連週報

We are Hiring!

この件についてもっと詳しく知りたい、議論したい、はたまたナウキャストという会社に興味を持ったという方は、カジュアル面談フォームから連絡ください。その際に「今週の生成AI情報まとめ見た!」と書いていただければ幸いです!

https://herp.careers/v1/finatexthd/vZWzSlI_B-qk

Finatext Tech Blog

Discussion