Skip to main content

Longchain, Langchaaaaain, etc.

Project description

permchain

Get started

pip install permchain

Usage

from permchain import InMemoryPubSubConnection, PubSub, Topic

topic_one = Topic("one")
chain_one = Topic.IN.subscribe() | (lambda x: x + 'b') | topic_one.publish()
chain_two = topic_one.subscribe() | (lambda x: x + 'c') | Topic.OUT.publish()

conn = InMemoryPubSubConnection()
pubsub = PubSub(processes=(chain_one, chain_two), connection=conn)

assert pubsub.invoke('a') == ['abc']

Check tests and examples for more examples.

Roadmap

  • Add initial retry support (pending changes in langchain)
  • Detect cycles (aka. infinite loops) and throw an error
    • Allow user to catch that error (by subcribing to an error topic?)
  • Replace Queue data structure with a Log data structure (this will enable checking the status of the readers, etc.)
  • Enable resuming PubSub from the "middle" of the computation
  • Add Redis-backed Connection implementation

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

permchain-0.0.1.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

permchain-0.0.1-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file permchain-0.0.1.tar.gz.

File metadata

  • Download URL: permchain-0.0.1.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.4 Darwin/22.5.0

File hashes

Hashes for permchain-0.0.1.tar.gz
Algorithm Hash digest
SHA256 c9c043bd4829baf3921ab6c8be32b2d79fb551da210cb48eed361687330ac1bd
MD5 fd2ccce9d7838a1abfcfb5681f5a35fb
BLAKE2b-256 e422e30a3a7352b29db4c69e8db2fa12dd52dae88d190d831df902c4e0638754

See more details on using hashes here.

File details

Details for the file permchain-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: permchain-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.4 Darwin/22.5.0

File hashes

Hashes for permchain-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f440c8dc1117264f1f8164f0417c0b0aad2201d57192bbd18d69247d189763d7
MD5 18b2296f825a40dbebd0cb52c4e2c1cf
BLAKE2b-256 628ad02bf49d4e178e020038e228c328d6603471a7df03a16388313d33615e1b

See more details on using hashes here.

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