Kā izveidot perplexity.ai API atslēgu

Aivis Brutans
3 min readJan 24, 2025

--

Photo by Yucel Moran on Unsplash

Īss apraksts kā izveidot API atslēgu MI meklētājprogrammas — perplexity.ai rīkā. Ņem vērā, ka pēc būtiskām šī rīka izmaiņām apraksts var nebūt aktuāls.

API atslēgu veido https://www.perplexity.ai/settings/api — sadaļā Settings -> API. Vispirms pievieno maksājuma karti, spiežot <Setup>:

Settings -> API: pievieno maksājuma karti

Ievada kartes datus un pēc <Submit> pogas nospiešanas API sadaļā parādīsies papildu sekcijas:

Sākotnējais logs pēc maksājumu datu ievadīšanas

API atslēgu (API Keys) varēs ģenerēt tikai tad, kad no iepriekš definētās maksājumu kartes tiks pārskaitīta nauda. Sadaļā “Available Credits” spiež uz “+ Buy Credits” un norāda summu kādu pārskaitīt no maksājumu kartes:

Buy Credits

Kad “Available Credits” parādās iemaksātā summa, tad ej uz sadaļu “API Keys” un spied <+ Generate>. Lietotājam ir iespēja ģenerēt vairākas API atslēgas:

Ģenerētā API atslēga

Atšķirībā no citiem rīkiem, API atslēga nav noslēpta — tā ir redzama pilnā tekstā.

Lai notestētu izveidoto API, Python programmā vispirms jāuzinstalē divas pakotnes: openai un keyring (šī ir nepieciešama API atslēgu pārvaldībai):

pip install keyring openai

Pakotnes keyring vietā var uzinstalēt kādu citu paroļu pārvaldības rīku vai izmantot citu veidu kā glabāt API atslēgu, piemēram, saglabāt kā pagaidu vides mainīgo (environment variable):

import os, getpass

def _set_env(var: str):
if not os.environ.get(var):
os.environ[var] = getpass.getpass(f"{var}: ")

_set_env("PERPLEXITY_API_KEY")

Vai API atslēgu glabāt vienkāršā teksta failā.dev (ņem vērā, ka tādā gadījumā jābūt ierobežotai piekļuvei šim failam) un izmantot python-dotenv pakotni, lai piekļūtu šim failam.

Šajā piemērā izmantoju keyring risinājumu. Python programmā ielādēju iepriekš uzinstalētās pakotnes:

import keyring
from openai import OpenAI

Tad izveidoju client instanci:

client = OpenAI(api_key=keyring.get_password('Perplexity_API', 'API_test'), base_url="https://api.perplexity.ai")

Atsevišķi norādu modeli, kādu izmantot uzvednes apstrādē:

MODEL = "sonar"

Šobrīd pieejami 2 veidu modeļi: sonar un sonar-pro.

Tālāk norādu uzvedni:

user_prompt = "Kā izveidot API atslēgu perplexity.ai rīkā?"

Un ziņu, kāds tiks nosūtīts modelim (system content laukā vari norādīt jebkādu citu sistēmas paziņojumu, kas modelim būtu jāņem vērā):

messages = [
{
"role": "system",
"content": (
"You are an artificial intelligence assistant and you need to "
"engage in a helpful, detailed, polite conversation with a user."
),
},
{
"role": "user",
"content": (
user_prompt
),
},
]

Un atliek vien izsaukt šo pieprasījumu un atgriezt tā vērtību:

response = client.chat.completions.create(
model=MODEL,
messages=messages,
)
print(response.choices[0].message.content)

Ja saņem modeļa atbildi, tad visu esi nokonfigurējis pareizi.

Uzvednes “Kā izveidot API atslēgu perplexity.ai rīkā?” atbilde

Tālāk jau atliek mainīt user_promptun uzdot sev interesējošos jautājumus. Pilns Python kods API pārbaudei ir pieejams šeit.

API sadaļā Available Credits vari sekot līdzi savai bilancei (cik daudz naudas resursu vēl ir pieejami API izsaukumiem).

Ņem vērā, ka jauniem lietotājiem ir ierobežots API pieprasījumu skaits (RPM — requests per minute). Ja API pieprasījumos esi iztērējis līdz $50, tad tu varēsi izsaukt ne vairāk par 50 pieprasījumiem minūtē:

Pieprasījumu skaita ierobežojumi atkarībā no lietotāja līmeņa: https://docs.perplexity.ai/guides/usage-tiers

Savu līmeni vari redzēt sadaļā “API Usage Tier”.

Raksta sagatavošanā tika izmantota Python 3.12.4 versija un sekojošas pakotņu versijas:

  • keyring: 25.6.0
  • openai: 1.58.1

--

--

No responses yet