Skip to main content

A module for interacting with shapes.inc API.

Project description

shapesinc-py

Installation

From PyPI:

pip install shapesinc -U

From GitHub:

pip install git+https://github.com/Rishiraj0100/shapesinc-py.git

Examples

Synchronous Shape Example

from shapesinc import (
  shape,
  ShapeUser as User,
  ShapeChannel as Channel
)

my_shape = shape("API_KEY", "my_shape")
user = User("u0")
channel = Channel("cli")

while True:
  inp = input(" >>> ")
  r = my_shape.prompt(inp, user = user, channel=channel)
  print(r.choices[0].message)

Asynchronous Shape Example

from shapesinc import (
  shape,
  ShapeUser as User,
  ShapeChannel as Channel
)

my_shape = shape("API_KEY", "my_shape", synchronous=False)
user = User("u0")
channel = Channel("cli")

async def run():
  while True:
    inp = input(" >>> ")
    r = await my_shape.prompt(inp, user = user, channel=channel)
    print(r.choices[0].message)

import asyncio
asyncio.run(run())

Image Examples

from shapesinc import Message, MessageContent, ContentType as C

msg = Message.new("Explain this image!", [dict(url = "URL OF IMAGE", type = c.image)])

resp = my_shape.prompt(msg)

Audio Messages

from shapesinc import Message, MessageContent, ContentType as C

msg = Message.new(files = [dict(url = "URL OF AUDIO FILE", type = c.audio)])

resp = my_shape.prompt(msg)

Note

  • When both audio and image files are given in one message, only audio will be processed!
  • Commands like !wack can be normally used with Shape.prompt method.

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

shapesinc-0.3.2.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

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

shapesinc-0.3.2-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file shapesinc-0.3.2.tar.gz.

File metadata

  • Download URL: shapesinc-0.3.2.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for shapesinc-0.3.2.tar.gz
Algorithm Hash digest
SHA256 729e8447a15e716aa6617ceec4132d2a5c531f429ab4996b771449fba64ecd42
MD5 04b621a9ed3b2e4bd9610d7f674c2329
BLAKE2b-256 45bfaacf41cff0f8344512f45f2ee897fad1f091b5283637f9e2e71c99b698a9

See more details on using hashes here.

File details

Details for the file shapesinc-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: shapesinc-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for shapesinc-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 26ed4dc71e73f19c2a29ef11f57354c1543546174b871bf46df7901d382c076d
MD5 5ec2480f5b76093f0afdd603c87a64cd
BLAKE2b-256 7044aff74fb98f0ba0f3cfdf96d21c709696b2fa1f3b619f2ed7230566ff5f57

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