Skip to main content

A small tool for automating collecting data from ChatGPT

Project description

A small tool for collecting data from ChatGPT over long periods of time.

Stargazers Releases Issues

💬 What does it do?

ChatGPT rate limits the number of questions users may ask. The goal of this project is to allow users to just leave their computers on for extended periods of time to collect large amounts of responses from ChatGPT. Contributions are welcome! 🤗

💬 Installation

To install sleepyask, do one of the following:

> pip install sleepyask
> py -m pip install sleepyask
> python -m pip install sleepyask

This project also depends on the following packages

> openai

💬 Usage

Authentication

You are required to provide an organization as well as an API Key

> Go to https://platform.openai.com/account/api-keys
> Login (if it is required)
> Click on your profile picture on the top-right 
> View API Keys 
> Create new secret key.  
  • count - This specifies the number of workers to create for asking questions. You can have multiple workers asking questions in parallel.

Sample code

It is recommended that you do not store your user credentials directly in your code. Instead, use something like python-dotenv to store your credentials in another file.

from dotenv import load_dotenv
from sleepyask.openai import chat

load_dotenv()  # take environment variables from .env.

# Your ChatGPT authentication configs
config = {
	"organization": os.getenv('OPENAI_ORGANIZATION_1'),
	"api_key": os.getenv('OPENAI_API_KEY_1'),
	"count": 1
}

# List of authentication configs
configs = [config]

# List of questions you would like to ask ChatGPT
question_list = ['What is 1 + 1?', 'What is 1 + 2?', 'What is 1 + 3?']

# The filename in which you would like your responses to be stored.
# sleepyask will create this file for you. If you create it yourself, there might be some problems.
output_file_path = 'draw.json'  

# Run sleepy_ask
chat.ask(configs=configs,
           questions=question_list,
           output_file_path=output_file_path,
           verbose=True)

Parameters

sleepyask.openai.ask has the following parameters:

Required

  • configs :: (required) - should be a list of dicts containing organization (your OpenAI organization ID), api key (your OpenAI api key) and the count (the number of instances to spin up for asking questions)
  • questions :: (required) - should be a list of strings containing questions you would like to ask ChatGPT.
  • output_file_path :: (required) - should be a valid file path where you would like your responses to be stored. sleepyask will create this file for you. If you create this file yourself, there might be some problems.

Optional

  • verbose :: (optional) - a boolean which specifies whether or not sleepyask should print its progress to the console. It is False by default
  • model :: (optional) - to specify which ChatGPT model to use. It is "gpt-3.5-turbo" by default
  • system_text :: (optional) - to specify system text. It is `
  • temperature :: (optional) - to specify how deterministic ChatGPT's responses are. Ranges from 0-2 where higher numbers represent increased randomness. It is 1 by default.
  • max_tokens :: (optional) - to specify the maximum number of tokens in ChatGPT's response. This is 2048 by default

💬 Get involved

  • 🐛 Found a bug or interested in adding a feature? - Create an issue
  • 🤗 Want to help? - Create a pull-request!

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

sleepyask-5.0.1.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

sleepyask-5.0.1-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

Details for the file sleepyask-5.0.1.tar.gz.

File metadata

  • Download URL: sleepyask-5.0.1.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for sleepyask-5.0.1.tar.gz
Algorithm Hash digest
SHA256 b7e0d5b4e5c7ac028d6ade01c0ec2dde57681f6495b9ee7e6b5083437b7e7c23
MD5 a02fdf2860a1ccddb5e8172469d9fe36
BLAKE2b-256 2995fdec627381d6f2add3998e39d617a06b3242a651c4c00a3d481da283316b

See more details on using hashes here.

File details

Details for the file sleepyask-5.0.1-py3-none-any.whl.

File metadata

  • Download URL: sleepyask-5.0.1-py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for sleepyask-5.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 708cb0366dc79721841b9d7d500d2d97adf1b197a9bac6cb68d12523097975f8
MD5 50442dc8551188d50236b063ba5dff3c
BLAKE2b-256 51bd6bab0b2caf168d1f2ed8d407c57694e820f79a13e1f735df68a8a8e5fd93

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page