Skip to main content

*Unofficial* client for the Kagi API

Project description

Kaginawa

project icon

An unofficial client to Kagi APIs

Installation

pip install kaginawa

Usage

from kaginawa.client import Kaginawa

# You can also set the KAGI_API_KEY environment variable.
client = Kaginawa(token="YOUR_API_TOKEN")

response: KaginawaFastGPTResponse = client.generate(
    "Write a logstash pipeline file to send a heartbeat to a server "
    "https://example.com/heartbeat every 30 seconds"
)

print(response.output)

for reference in response.references:
    print(reference.title)
    print(reference.snippet)
    print(reference.url)

response: KaginawaEnrichResponse = client.enrich_web(query="Best fermented hot sauce")
# or 
response: KaginawaEnrichResponse = client.enrich_news(query="Is Oliver Tree okay?")

for result in response.results:
    print(result.rank)
    print(result.title)
    print(result.url)
    print(result.snippet)
    print(result.published)


response: KaginawaSummarizationResponse = client.summarize(
    url="https://example.com",
    engine=KaginawaSummarizationEngine.AGNES,
    summary_type=KaginawaSummaryType.TAKEAWAY,
    target_language="FR"
)

print(response.output)

response: KaginawaSummarizationResponse = client.summarize(
    text="The rain in Spain…",
    engine=KaginawaSummarizationEngine.CECIL
)

print(response.output)

Async!

import asyncio
from kaginawa.async_client import AsyncKaginawa

async def amain():
    kagi_client = AsyncKaginawa(...)
    res = await kagi_client.generate(...)
    print(res.output)

    # If you want to explicitly close the client.
    kagi_client.close()

if __name__ == "__main__":
    asyncio.run(amain()) 

FAQ

Do you support the search API?
I would love to but I don't have enterprise.
Why the name?
Because it's like the only word that starts with Kagi

kagi_meme

Authors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kaginawa-0.0.8.tar.gz (606.1 kB view hashes)

Uploaded Source

Built Distribution

kaginawa-0.0.8-py3-none-any.whl (8.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page