Python SDK for Maya Labs' natural language programming paradigm
Project description
Maya Labs : Program machines using natural language.
The Maya Labs Python SDK provides easy async access to our PAC-1 program synthesis engine, with a CLI to instruct and generate programs from instructions in natural language.
Installation
pip install --upgrade mayalabs
Preview
https://user-images.githubusercontent.com/8736797/230947440-2403762d-a14b-4b00-8fbe-bd803ab24028.mp4
Usage
Get the Maya Labs API key from the Settings > Developer section.
export MAYA_API_KEY = "mayakey-..."
Or set mayalabs.api_key to its value:
import mayalabs
mayalabs.api_key = "mayakey-..."
script = """
1. trigger on receive
2. research {{term}} on wikipedia
3. extract 'title' and 'summary' from tabular data
4. send response back
"""
function = mayalabs.Function(name="Scrape2")
# Creating new worker...
function.update(script=script)
# Generating program graph...
# Starting worker...
# Installing dependencies...
# Deployed!
output = function.call({"term": "Dr. Vikram Sarabhai"})
print(output)
# finds and outputs title and summary from wikipedia results
PAC-1 takes in steps written in English, writes & assembles a discrete program graph, and deploys ready-to-use software on our compute infrastructure, that you can call within your code. You can set up missing dependencies / visualize the flow of logic by following the link to flow-based editor it provides after deployment.
Check our documentation for more usage and tutorials.
Use Cases
- If...Then Conditionals and Looping
- Custom Functions
- Web Scrapers
- Repeating Workflows
- Custom Dashboards
- Data Transformation
- Platform Bots
- Business Processes
- Long-term memory
- Division of labour
Command Line Usage
Today, script need to be manually written step-by-step, but we are offering early WIP preview of iterative script generation via our CLI. Try running:
$ mayalabs instruct -c 'fetch Name and Email from gsheet, write function to merge all columns, and return data'
And then use the generated script as function.
Requirements
- Python 3.7.1+
Issues
All feedback and bug reports welcome! Report in the issues section, or mail us at humans@mayalabs.io.
Full list of capabilities and limits here.
Roadmap
- Cleaner logs and exception handling
- Dependency configuration UX improvement
- Import skill repositories for reusing skills created by user or present in store
- Create and call downstream auto-deployed functions
- Allow multi-profile and team profile access
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mayalabs-0.0.9.tar.gz.
File metadata
- Download URL: mayalabs-0.0.9.tar.gz
- Upload date:
- Size: 28.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7f495996388b5370a49c5dc2896db6d6e89edd1f6e4950af67cb05da23e437e6
|
|
| MD5 |
0f26e41e850a912f7ab6483b429b2ddd
|
|
| BLAKE2b-256 |
c66dc76f21fe31f759f34e421cbd007862effb332b414f3df81cad5773115f2c
|
File details
Details for the file mayalabs-0.0.9-py3-none-any.whl.
File metadata
- Download URL: mayalabs-0.0.9-py3-none-any.whl
- Upload date:
- Size: 33.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6adc72dce21597bcad199b97495ab27a704bcead51de328e82d937210af0ac84
|
|
| MD5 |
d0b17fbad45d5582615f6b9cbb13038a
|
|
| BLAKE2b-256 |
21c694da62f31220f41fdb7b1b077dd8fe45895df28a6cdb48676d99b1ff5b5b
|