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.1.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.1-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: shapesinc-0.2.1.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.1.tar.gz
Algorithm Hash digest
SHA256 97abf7c7a63543794315edecb709029f0ccfa758697c1a504bdec69aff4173fd
MD5 b4665d29290554cf2e6b0c80184d0a8e
BLAKE2b-256 5a8ada52a91f64bb4ade019b154f7990ce44f30e1ba8ff0810c90545deecc4ed

See more details on using hashes here.

File details

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

File metadata

  • Download URL: shapesinc-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 9.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.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f997b4c02f15d03b2af402507c8fa56fe4535d099894c239178f62b3fb5e47cd
MD5 7bcfb1ef9510bde4a6a76e03eb188187
BLAKE2b-256 2fb924baa8673b59569fc026f1d71d0c690673d5eaa822e61c860c425776209c

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