Turn your natural language descriptions into fully functional, deployed microservices with a single command!
Your imagination is the limit!
gptdeploy-tiny.mp4
This project streamlines the creation and deployment of microservices.
Simply describe your task using natural language, and the system will automatically build and deploy your microservice.
To ensure the microservice accurately aligns with your intended task a test scenario is required.
Quickstart
Requirements
Create an account at cloud.jina.ai where your microservice will be deployed
Installation
pip install gptdeploy
gptdeploy configure --key <your openai api key>
If you set the environment variable OPENAI_API_KEY, the configuration step can be skipped.
Your api key must have access to gpt-4 to use this tool.
We are working on a way to use gpt-3.5-turbo as well.
Create Microservice
gptdeploy create --description "Given a PDF, return its text" --test "https://www.africau.edu/images/default/sample.pdf"
To create your personal microservice two things are required:
A description of the task you want to accomplish.
A test scenario that ensures the microservice works as expected.
The creation process should take between 5 and 15 minutes.
During this time, GPT iteratively builds your microservice until it finds a strategy that make your test scenario pass.
Once the microservice is created and deployed, you can test it using the generated Streamlit playground.
The deployment is made on the Jina`s infrastructure.
When creating a Jina account, you get some free credits, which you can use to deploy your microservice ($0.025/hour).
Be aware that the costs you have to pay for openai vary between $0.50 and $3.00 per microservice.
If you run out of credits, you can purchase more.
Delete Microservice
To save credits you can delete your microservice via the following commands:
jc list # get the microservice id
jc delete <microservice id>
Examples
Animal Detector
gptdeploy create --description "Given an image, return the image with bounding boxes of all animals (https://pjreddie.com/media/files/yolov3.weights, https://raw.githubusercontent.com/pjreddie/darknet/master/cfg/yolov3.cfg)" --test "https://images.unsplash.com/photo-1444212477490-ca407925329e contains animals"
Meme Generator
gptdeploy create --description "Generate a meme from an image and a caption" --test "Surprised Pikachu: https://media.wired.com/photos/5f87340d114b38fa1f8339f9/master/w_1600%2Cc_limit/Ideas_Surprised_Pikachu_HD.jpg, TOP:When you discovered GPTDeploy"
Rhyme Generator
gptdeploy create --description "Given a word, return a list of rhyming words using the datamuse api" --test "hello"
Word Cloud Generator
gptdeploy create --description "Generate a word cloud from a given text" --test "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
3d model info
gptdeploy create --description "Given a 3d object, return vertex count and face count" --test "https://raw.githubusercontent.com/polygonjs/polygonjs-assets/master/models/wolf.obj"
Table extraction
--description "Given a URL, extract all tables as csv" --test "http://www.ins.tn/statistiques/90"