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.2.0.tar.gz (9.3 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.2.0-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for shapesinc-0.2.0.tar.gz
Algorithm Hash digest
SHA256 d09299cfd1a12cab4497b96d529ad55a2f5e0f125889a226563fc5aa2cd10faf
MD5 0566a4c8b99725d2d2e59963d8f33215
BLAKE2b-256 9118a9a648d6b7618370b3c42f0c5d96400addd8ebc0e4cebda61e6f3ec77e8a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: shapesinc-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 9.7 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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0dc3be4c63814ffa0a6f67b594235b5b73613863f2e6fb32cd3f43218a238e82
MD5 7b7978580059fee63928d60498420f1c
BLAKE2b-256 ad3d130f912ac79cb2bff601445ee0eff876368059283969fc2510eb69168f07

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