Hypereal AIHypereal AI
Video StudioVideo AgentMedia APICoding LLMsMCP
视频 APISeedance 2.0KlingVeo 3.1Gemini Omni VideoHappyHorse 1.1HappyHorse 1.0全部模型 →
图像 APIGPT Image 2Nano BananaFLUXMidjourney Alternative全部模型 →
LLM APIClaude OpusClaude SonnetClaude FableGPT-5.5GPT-5.5 ProGemini 3 ProGemini 3.5 FastGemini 3.5 ThinkingDeepSeek全部模型 →
价格
API 参考示例集
企业版推广计划关于我们更新日志联系我们

价格

返回文章列表
AIAPISearchTutorial

如何使用 Perplexity AI API (2026)

将 Perplexity 的搜索增强型 AI 集成到应用程序的开发者指南

Hypereal AI TeamHypereal AI Team
10 min read
2026年2月6日
100+ AI 模型,一个 API

开始使用 Hypereal AI 构建

通过单个 API 访问 Kling、Flux、Sora、Veo 等模型。免费额度即可起步,可扩展至千万级。

获取免费 API Key查看文档

无需信用卡 • 10 万+ 开发者 • 企业级服务

如何使用 Perplexity AI API (2026)

Perplexity AI 提供的 API 将大型语言模型与实时网络搜索相结合。与依赖静态训练数据的标准 LLM API 不同,Perplexity 的 API 会从网络检索当前信息,并将其整合为准确且附带引用的回答。这使其成为需要最新信息应用的理想选择:如研究工具、新闻聚合器、竞品分析、客户支持机器人以及任何对信息时效性有要求的落地产品。

本指南涵盖了完整的 API 设置、所有可用模型、多语言代码示例以及实用的集成模式。

为什么选择 Perplexity API?

特性 Perplexity API 标准 LLM API
实时网络搜索 是,内置 否(静态训练数据)
来源引用 是,包含 URL 否
知识截止日期 无(即时搜索) 数月至数年前
幻觉率 较低(基于搜索依据) 较高
结构化输出 支持 JSON 模式 视供应商而定
OpenAI 兼容 是 取决于供应商

前提条件

  1. 拥有 API 访问权限的 Perplexity 账号。
  2. 从 Perplexity 开发者仪表板获取 API Key。
  3. Python 3.9+ 或 Node.js 18+(用于运行以下示例)。

第一步:获取 API Key

  1. 访问 perplexity.ai/settings/api。
  2. 点击 Generate API Key。
  3. 复制该 Key 并妥善保存。
  4. 为账户充值(该 API 采用预付费模式,非后付费)。

设置环境变量:

export PERPLEXITY_API_KEY="pplx-your-api-key-here"

第二步:发起首次请求

Perplexity API 兼容 OpenAI,因此你可以使用 OpenAI SDK:

pip install openai
from openai import OpenAI

client = OpenAI(
    api_key="pplx-your-api-key-here",
    base_url="https://api.perplexity.ai"
)

response = client.chat.completions.create(
    model="sonar-pro",
    messages=[
        {
            "role": "system",
            "content": "你是一个得力的研究助手。请提供准确且附带引用来源的回答。"
        },
        {
            "role": "user",
            "content": "2026年核聚变能源的最新进展有哪些?"
        }
    ]
)

print(response.choices[0].message.content)

# 访问引用来源 (Citations)
if hasattr(response, 'citations'):
    print("\n来源:")
    for citation in response.citations:
        print(f"  - {citation}")

可用模型

Perplexity 提供了针对不同用例优化的多种模型:

模型 最佳用途 上下文窗口 搜索功能 价格 (输入) 价格 (输出)
sonar-pro 复杂研究、详细回答 200K 是 $3/M tokens $15/M tokens
sonar 通用问题、快速响应 128K 是 $1/M tokens $1/M tokens
sonar-reasoning-pro 多步分析、深度对比 128K 是 $2/M tokens $8/M tokens
sonar-reasoning 带搜索的轻量推理 128K 是 $1/M tokens $5/M tokens
sonar-deep-research 综合报告、长文本 128K 是 (深度) $2/M tokens $8/M tokens

模型选择指南:

  • 使用 sonar 处理快速的事实性问题和轻量级查询。
  • 使用 sonar-pro 进行详细研究和处理复杂问题。
  • 使用 sonar-reasoning-pro 处理需要分析和对比的任务。
  • 使用 sonar-deep-research 生成需要多次搜索迭代的综合报告。

第三步:使用 cURL

curl -X POST https://api.perplexity.ai/chat/completions \
  -H "Authorization: Bearer pplx-your-api-key-here" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "sonar-pro",
    "messages": [
      {
        "role": "user",
        "content": "对比 2026 年排名前 3 的 JavaScript 框架的流行度和性能"
      }
    ],
    "temperature": 0.2,
    "max_tokens": 2000
  }'

第四步:Node.js / TypeScript

import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: process.env.PERPLEXITY_API_KEY,
  baseURL: 'https://api.perplexity.ai',
});

async function search(query: string): Promise<string> {
  const response = await client.chat.completions.create({
    model: 'sonar-pro',
    messages: [
      {
        role: 'system',
        content: '提供简明扼要、基于事实且附带引用来源的回答。',
      },
      {
        role: 'user',
        content: query,
      },
    ],
    temperature: 0.2,
    max_tokens: 1500,
  });

  return response.choices[0].message.content ?? '';
}

// 使用示例
const result = await search('比特币当前的价格是多少?');
console.log(result);

第五步:流式响应 (Streaming)

用于实时向用户展示回答:

from openai import OpenAI

client = OpenAI(
    api_key="pplx-your-api-key-here",
    base_url="https://api.perplexity.ai"
)

stream = client.chat.completions.create(
    model="sonar",
    messages=[
        {
            "role": "user",
            "content": "今天的科技新闻发生了什么?"
        }
    ],
    stream=True
)

for chunk in stream:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

print()  # 最后换行

第六步:搜索上下文控制

你可以控制 Perplexity 如何搜索网页:

response = client.chat.completions.create(
    model="sonar-pro",
    messages=[
        {
            "role": "user",
            "content": "Python 3.14 的最新特性和发布日期"
        }
    ],
    # 控制搜索行为
    search_domain_filter=["python.org", "docs.python.org", "peps.python.org"],
    search_recency_filter="week",  # 选项: "hour", "day", "week", "month"
    return_citations=True,
    return_related_questions=True
)

print(response.choices[0].message.content)

# 获取用户可能想追问的相关问题
if hasattr(response, 'related_questions'):
    print("\n相关问题:")
    for q in response.related_questions:
        print(f"  - {q}")

实际应用用例

1. 研究助手

def research_topic(topic: str, depth: str = "standard") -> dict:
    model = "sonar-deep-research" if depth == "deep" else "sonar-pro"

    response = client.chat.completions.create(
        model=model,
        messages=[
            {
                "role": "system",
                "content": """你是一名研究分析师。请提供:
                1. 关键结论(要点形式)
                2. 最近进展(过去 30 天)
                3. 专家观点
                4. 数据与统计图表
                所有结论均需附带引用。"""
            },
            {
                "role": "user",
                "content": f"研究课题: {topic}"
            }
        ],
        return_citations=True,
        max_tokens=3000
    )

    return {
        "content": response.choices[0].message.content,
        "citations": getattr(response, 'citations', []),
        "model": model
    }

result = research_topic("2026年欧洲 AI 监管现状", depth="deep")
print(result["content"])

2. 竞品情报分析

def analyze_competitor(company: str) -> str:
    response = client.chat.completions.create(
        model="sonar-reasoning-pro",
        messages=[
            {
                "role": "user",
                "content": f"""分析竞品 {company}:
                - 最近发布的产品
                - 定价变化
                - 关键合作伙伴关系
                - 市场地位
                - 优势与劣势
                请基于可获取的最实时信息进行分析。"""
            }
        ],
        search_recency_filter="month",
        return_citations=True,
        max_tokens=2500
    )

    return response.choices[0].message.content

print(analyze_competitor("Vercel"))

3. 新闻聚合

def get_news_summary(topic: str) -> str:
    response = client.chat.completions.create(
        model="sonar",
        messages=[
            {
                "role": "user",
                "content": f"总结今天关于 {topic} 的 5 条重点新闻。提供来源。"
            }
        ],
        search_recency_filter="day",
        return_citations=True,
        max_tokens=1500
    )

    return response.choices[0].message.content

print(get_news_summary("人工智能"))

4. 事实核查 API

def fact_check(claim: str) -> str:
    response = client.chat.completions.create(
        model="sonar-reasoning-pro",
        messages=[
            {
                "role": "system",
                "content": """你是一名事实核查员。对于每个声明:
                1. 说明其为:真实、虚假、部分真实或无法验证
                2. 提供来自可靠来源的证据
                3. 引用你的来源
                请保持客观和严谨。"""
            },
            {
                "role": "user",
                "content": f"核查此声明: {claim}"
            }
        ],
        return_citations=True,
        max_tokens=2000
    )

    return response.choices[0].message.content

print(fact_check("2025年的全球平均气温是有记录以来最高的一年"))

速率限制与定价

层级 请求数/分钟 Tokens/分钟 每月支出
免费试用 5 20,000 $0 (额度有限)
标准版 50 100,000 按量计费
Pro 版 500 1,000,000 $50+
企业版 自定义 自定义 联系销售

成本估算示例:

用例 模型 每日请求数 估算每月成本
个人研究 sonar 50 约 $5
新闻聚合 sonar 500 约 $30
竞品情报 sonar-pro 100 约 $50
生产级搜索应用 sonar-pro 5,000 约 $500

错误处理

from openai import OpenAI, APIError, RateLimitError, APIConnectionError
import time

client = OpenAI(
    api_key="pplx-your-api-key-here",
    base_url="https://api.perplexity.ai"
)

def query_with_retry(query: str, max_retries: int = 3) -> str:
    for attempt in range(max_retries):
        try:
            response = client.chat.completions.create(
                model="sonar",
                messages=[{"role": "user", "content": query}],
                max_tokens=1500
            )
            return response.choices[0].message.content

        except RateLimitError:
            wait_time = 2 ** attempt
            print(f"触发速率限制。等待 {wait_time} 秒...")
            time.sleep(wait_time)

        except APIConnectionError:
            print("连接错误。正在重试...")
            time.sleep(1)

        except APIError as e:
            print(f"API 错误: {e}")
            raise

    raise Exception("超过最大重试次数")

故障排除

问题 解决方案
401 Unauthorized 检查 API Key 是否正确且账户是否有余额
429 Rate Limited 实施退避重试机制;升级层级
引用为空 并非所有回答都包含引用;确保使用 return_citations=True
信息过时 使用 search_recency_filter 限制搜索为近期结果
响应慢 对于追求速度的场景,请使用 sonar 而非 sonar-pro
找不到模型 检查模型名称;Perplexity 会定期更新模型命名

结语

Perplexity AI API 是构建需要基于实时网页数据的 LLM 应用的最佳选择。其兼容 OpenAI 的接口使集成变得简单,而内置的搜索和引用功能消了为网页内容构建独立 RAG 管道的必要性。

如果你正在构建的应用还需要 AI 生成的媒体——如图片、视频、数字人或语音合成——请关注 Hypereal AI。Hypereal 为生成式媒体提供统一的 REST API 且支持按量计费,让你能够轻松地将 Perplexity 的搜索智能与 Hypereal 的媒体生成能力集成到同一个应用中。

相关文章

如何使用 GLM-4.6 API:开发者完整指南 (2026)

10 min read

如何使用 GLM-4.7 API:开发者指南 (2026)

11 min read

如何利用 API 构建 AI 数字人视频 (分步指南)

7 min read

On this page

  • 如何使用 Perplexity AI API (2026)
  • 为什么选择 Perplexity API?
  • 前提条件
  • 第一步:获取 API Key
  • 第二步:发起首次请求
  • 可用模型
  • 第三步:使用 cURL
  • 第四步:Node.js / TypeScript
  • 第五步:流式响应 (Streaming)
  • 第六步:搜索上下文控制
  • 实际应用用例
  • 速率限制与定价
  • 错误处理
  • 故障排除
  • 结语
Desktop agent

Download Hypereal Agent

Run a local AI media workspace for image generation, video prompts, model selection, credit tracking, and saved artifacts.

MacWindows
v0.1.2Requires a hypereal.cloud API keyRelease manifest
Hypereal Agent desktop app screenshot

立即开始构建

立即开始构建
LogoHypereal AI
所有系统正常
LLM API
  • Hypereal SDK
  • MCP Server
  • Enterprise API
  • All LLM Models
  • Claude Fable 5
  • Claude Opus 4.7
  • Claude Sonnet 4.6
  • GPT-5.5
  • Claude Haiku 4.5
  • GPT-5.5 Pro
  • Gemini 3.1 Pro Preview
  • Gemini 3.5 Thinking
  • Gemini 3.5 Fast
  • DeepSeek V4 Pro
  • Kimi K2.6
  • GLM 5.2
  • Claude API in China
  • OpenAI API in China
AI API
  • AI API Overview
  • Seedance 2.0 API
  • Kling 3.0 API
  • Veo 3.1 API
  • FLUX API
  • GPT Image 2 API
  • vs WaveSpeed
  • vs fal.ai
  • vs Replicate
  • vs KIE.ai
  • vs OpenRouter
  • vs Together AI
  • vs SiliconFlow
  • Midjourney Alternative
  • Higgsfield Alternative
  • OpenRouter Alternative
视频模型
  • Google Veo 3.1 API
  • Kling 3.0 API
  • Kling O3 Pro API
  • Seedance 2.0 API
  • HappyHorse 1.1 API
  • HappyHorse 1.0 API
  • WAN 2.7 API
  • WAN Video API
  • Grok Video API
  • Hunyuan Video API
  • PixVerse V6 API
  • Pika Video API
  • Luma Dream Machine API
  • MiniMax Video API
  • Vidu Video API
  • Gemini Omni Video API
图像模型
  • NanoBanana 2 API
  • FLUX 2 API
  • GPT Image 1 API
  • Grok Image API
  • SeeDream V5 API
  • Imagen 4 API
  • Ideogram API
  • Recraft API
  • DALL-E 3 API
  • Stable Diffusion API
  • Gemini Image API
工具
  • Face Swap API
  • Video Face Swap API
  • Virtual Try-On API
  • AI Talking Avatar API
  • Lip Sync API
  • OmniHuman Avatar API
  • Tripo3D H3.1 API
  • ElevenLabs TTS API
  • Fish Audio TTS API
  • Whisper STT API
  • Lyria Music API
生成器
  • Video Agent
  • AI 图像生成器
  • AI 视频生成器
合集
  • 最佳视频模型
  • 最佳图像模型
  • Seedance 2.0
  • WAN 2.7
  • Qwen Image 2
  • Grok AI
  • Seedance 1.5
  • 运动控制
  • 内容检测
  • 目标检测
公司
  • 关于我们
  • 文档
  • Hypereal SDK
  • Cookbook
  • 更新日志
  • 博客
  • 联系我们
  • 常见问题
  • 路线图
  • 企业版
  • 联盟分销计划
  • Be a Creator
  • 开发者计划
法律
  • 隐私政策
  • 服务条款
  • 退款政策
  • Cookie 政策
  • 价格
  • 所有模型
  • 站点地图
  • Status
© 版权所有 2026。保留所有权利。
TwitterGitHubLinkedInYouTubeEmail