
PerplexityのAPIを使う
[読了目安: 4分]
NO AI(人間が書きました✍️)
AI系ポッドキャスト(耳で学ぶAI)運営の矢野哲平(@robothink_jp)です。この記事ではPerplexityをAPIから操作する方法について解説します。
PerplexityをAPIから操作する時コードを書く必要があります。ですが、この記事ではノーコードで実装する方法で解説します。
👨💻対象読者
- Perplexityを使ったことがある
- PerplexityをAPIで操作してみたい
Perplexity API
検索AIのPerplexityをコードから操作できます。仕事で使うことがあったので触ってみました。
APIキー発行に必要なのはクレジットカードかGoogle Payです。
APIキーを発行する
Perplexityのサイトにアクセスして左側プロフィールにある歯車アイコンを押します。次にAPIを選択。
初回は支払い方法を設定していないので👇のような画面になります。


支払い方法の設定が終わったらAPIキーを発行できます。
ちなみに自動チャージかクレジット購入かで選べます。試しに5ドルで購入してみました。
生成されたAPIキーは他人に知られない場所で保管しましょう。
APIキーを使う
curlから操作してみます。
curl -X POST \
--url https://api.perplexity.ai/chat/completions \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--header "Authorization: Bearer {API_KEY}" \
--data '{
"model": "{MODEL}",
"stream": false,
"max_tokens": 1024,
"frequency_penalty": 1,
"temperature": 0.0,
"messages": [
{
"role": "system",
"content": "{SYSTEM_PROMPT}"
},
{
"role": "user",
"content": "{USER_PROMPT}"
}
]
}'
curlから操作する方法もありますが自動化ツールのmakeから使うと簡単です。
モジュールでPerplexityを選択しAPIキーを入力すれば使えます。

モデル
API経由の場合、選択できるのはMistralかLlamaベースのモデルになります。
onlineと名前の付くモデルがWebの情報を取得できるモデルです。

試しにonlineではないモデルを使ってみましたが出力がなかなか渋いです。online以外のモデルは今のところ使う場面はなさそうです。
公式のフォーラムでもonline使ってねと、発言しています。
(サイトのような返答がない、というユーザーの質問に対して公式の回答)
あなたはmistral-7b-instruct を使用していました。 もし、より私たちの製品に近い結果をお望みでしたら、私たちのオンラインLLCをご利用ください、 pplx-7b-onlineまたはpplx-70b-online.
金額

所感
サイトで使うPerplexityとAPIで使うPerplexityは印象が変わります。API経由は正直使いづらさが否めません。サイトの方は使いやすいんですけどね…
あるキーワードに基づきインターネット上の情報にアクセスしようとしました。ですが、全く見当違いの回答が生成されました。サイトの方では少ない情報でもこちらが望む答えを返してくれますが、APIの場合はしっかり背景情報や役割を設定しないと望む回答を得られません。
ちなみに検索AIのGensparkについて文章を生成してもらいましたが、以下のような回答がありました。
Gensparkは、AIエンジニアを養成するための教育プラットフォームです。具体的には、AI技術に関する専門的な知識とスキルを段階的に学べるコースを提供しています。
全然違いますよね…🤔
ちなみにPerplexityのWebサイトで"Genspark"とだけ入力して得られた回答がこちら。
Gensparkは、2023年に登場した新しいAI検索エンジンで、ユーザーのクエリに基づいてリアルタイムで情報を検索し、生成する能力を持っています。特に注目されるのは、ユーザーが必要な情報を一つのページ(Sparkpage)で得られる点です。
よくよく調べてみるとgenspark.netという教育プラットフォームがリアルであるようです。
ですが私が調べたいと思ったのはgenspark.aiという検索AI。
そのためより正確な情報を取得したい場合はプロンプトにURLも含めると確実ですね。
{
"role": "user",
"content": "「Genspark」(https://genspark.ai)というサービスについて説明してください"
}
参考👇
その他Q&A
よくある質問から気になる情報をピックアップしました。
APIを通じて送信されたデータは学習に利用されますか?
NO。APIに提供されたデータやAPIによって生成されたデータを利用することはないとのことです。
APIはウェブブラウジングをサポートしていますか?
Perplexity Sonar Models(onlineと付いているやつ)ではPerplexityの検索インデックスと公共のインターネットから情報を活用します。
【note読者限定】生成AIのおすすめツールの資料を配布中
生成AIツールは何を使えばいいか分からない
もっと業務効率化に貢献するツールを知りたい
ChatGPT以外のAIツールを知りたい
こういった声に応えておすすめの生成AIツールを解説する資料を制作しました。もっとAIの情報をキャッチアップしたい人はぜひご覧ください。
👉資料を受け取る
noteでも月に20本ほどAI関連の記事を投稿しています。フォローよろしくお願いします😼