Skip to main content

Talon — AI-native multi-model data engine (SQL + KV + Vector + TimeSeries + MQ + FTS + GEO + Graph + AI)

Project description

Talon Python SDK

基于 ctypes 封装 talon_execute C ABI,零编译依赖。

安装

pip install talon-db

Native library 在首次 import talon 时自动从 GitHub Releases 下载,无需手动编译。

快速开始

from talon import Talon

with Talon("./my_data") as db:
    # SQL
    db.sql("CREATE TABLE t (id INT, name TEXT)")
    db.sql("INSERT INTO t VALUES (1, 'hello')")
    rows = db.sql("SELECT * FROM t")

    # KV
    db.kv_set("key", "value", ttl=60)
    print(db.kv_get("key"))

    # 时序
    db.ts_create("metrics", tags=["host"], fields=["cpu"])
    db.ts_insert("metrics", {
        "timestamp": 1000,
        "tags": {"host": "srv1"},
        "fields": {"cpu": 0.85},
    })

    # 消息队列
    db.mq_create("events")
    db.mq_publish("events", "hello world")
    msgs = db.mq_poll("events", "g1", "c1", count=10)

    # 向量
    db.vector_insert("idx", 1, [0.1, 0.2, 0.3])
    results = db.vector_search("idx", [0.1, 0.2, 0.3], k=5)

    # AI 会话
    db.ai_create_session("s1", metadata={"model": "gpt-4"})
    db.ai_append_message("s1", {
        "role": "user", "content": "hello",
        "token_count": 1,
    })
    history = db.ai_get_history("s1")

测试

pip install talon-db
python3 tests/test_sdk.py

库查找优先级

SDK 按以下顺序查找 libtalon 动态库:

  1. TALON_LIB_PATH 环境变量
  2. 包内 talon/native/ 目录(platform wheel)
  3. SDK 开发布局 talon-sdk/lib/{platform}/
  4. 缓存目录(自动从 GitHub Releases 下载)
  5. 系统搜索路径

特性

  • 零编译依赖:仅用 Python 标准库 ctypes,无需安装额外包
  • 全引擎覆盖:SQL / KV / TS / MQ / Vector / AI 六大模块
  • Value 自动解包:SQL 结果自动转换为 Python 原生类型(int/float/str/bool/dict/list)
  • Context Manager:支持 with Talon(path) as db: 自动关闭
  • 类型注解:完整 typing 注解,IDE 友好

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

talon_db-0.1.36.tar.gz (19.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

talon_db-0.1.36-py3-none-any.whl (17.6 kB view details)

Uploaded Python 3

File details

Details for the file talon_db-0.1.36.tar.gz.

File metadata

  • Download URL: talon_db-0.1.36.tar.gz
  • Upload date:
  • Size: 19.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for talon_db-0.1.36.tar.gz
Algorithm Hash digest
SHA256 3405f9721f01c9532a466e11d31961b9f0a439c633267981f51eb510ec575c2f
MD5 c5afdf099c252164c82b985cadcc445d
BLAKE2b-256 e54c8089f9ed39a125437148e15aab8b1a97ea1560df735f0fbfef9b21fd8a7e

See more details on using hashes here.

File details

Details for the file talon_db-0.1.36-py3-none-any.whl.

File metadata

  • Download URL: talon_db-0.1.36-py3-none-any.whl
  • Upload date:
  • Size: 17.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for talon_db-0.1.36-py3-none-any.whl
Algorithm Hash digest
SHA256 e8fda0e81e16a2d648206c7e7219c724bd79b81e311a2d7310c98b1acb64566b
MD5 9eaf2629c6c46847f34b053717dd2d23
BLAKE2b-256 a877d9b09f4fc31cd3e4cb0632b6a474d5017a0d5860bb61d6812907218b5e3f

See more details on using hashes here.

Supported by

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