CycloneAI
CycloneAI is a small Python package that keeps the public API simple:
from cycloneai import Client
ai = Client(provider="auto")
print(ai.ask("Hello"))
What is included
ClientandAsyncClientask(),stream(),compare(),save(),load()- conversation memory
- provider routing with
provider="auto"and fallback - provider registration for custom backends
What is not included
This package does not automate guest access to third-party hosted LLM websites. The built-in gemini, gpt, and claude providers are explicit placeholders so the public API and provider architecture are ready without shipping code that attempts to bypass official access controls or service terms.
If you want real responses, register your own compliant provider implementation.
Usage
Basic
from cycloneai import Client
ai = Client(provider="auto")
reply = ai.ask("Python study order")
print(reply)
Memory
chat = Client(memory=True)
chat.register_provider(MyProvider())
chat.ask("My name is Hyunho")
chat.ask("What is my name?")
System prompt
ai = Client(system="You are the best coding mentor.")
ai.register_provider(MyProvider())
Streaming
for chunk in ai.stream("Write a short story"):
print(chunk, end="")
Async
from cycloneai import AsyncClient
ai = AsyncClient()
ai.register_provider(MyProvider())
print(await ai.ask("What is AI?"))
Top-level helper
import cycloneai as cy
provider = MyProvider()
print(cy.ask("Hi", provider=provider))
Custom provider example
from cycloneai import BaseProvider, Client, Response
class MyProvider(BaseProvider):
name = "demo"
def ask(self, prompt, *, system=None, history=None, timeout=30):
return Response(
text=f"demo reply: {prompt}",
provider=self.name,
time=0.01,
tokens=None,
)
ai = Client(provider=MyProvider())
print(ai.ask("Hello"))
Metadata
Release files for cycloneai 0.2.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| cycloneai-0.2.5.tar.gz | 14.3 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cycloneai-0.2.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.3 kB
Release files / cycloneai-0.2.5.tar.gz
| Download URL | cycloneai-0.2.5.tar.gz |
|---|---|
| Size | 14.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2b8d7836b253608767dc733b105286fcaff8153a63c19143c9761b357be36506
|
|
BLAKE2b-256 checksum How to use checksums |
324936f09f9f57d484e5206c39242ccbc9eaa3c0870da56b57a2d5e08548eda8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Release files / cycloneai-0.2.5-py3-none-any.whl
| Download URL | cycloneai-0.2.5-py3-none-any.whl |
|---|---|
| Size | 16.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a1b9fa420a391b6acfb2903a485da245471601b0104412b9a10ad6163a07e414
|
|
BLAKE2b-256 checksum How to use checksums |
b4c6d9d0f74e404f5a1ecbd591b99d1fe566f5c090e39701115181046d2c4719
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Security for cycloneai 0.2.5
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.