#Extract the idea and question - 000018
1 messages · Page 1 of 1 (latest)
Hi @stable verge. I'm kapa.ai, your friendly support bot. I will try to answer your question by searching through the knowledge base. :wave:
Idea Summary:
The user wants to utilize the ChatGPT API to search for answers within their documents and is ready to invest in it. They are seeking guidance on how to integrate the ChatGPT API into their application.
Extracted Questions and Possible Answers:
-
Question: How can I use the ChatGPT API in my application?
Answer: The ChatGPT API allows developers to integrate ChatGPT into their applications. You can refer to the Create chat completion (https://platform.openai.com/docs/api-reference/chat/create) API documentation for details on how to call this model. To count tokens in a text string without making an API call, you can use OpenAI’s tiktoken (https://github.com/openai/tiktoken) Python library. Example code can be found in the OpenAI Cookbook’s guide on how to count tokens with tiktoken (https://github.com/openai/openai-cookbook/blob/main/examples/How_to_count_tokens_with_tiktoken.ipynb). -
Question: What is the cost of using the ChatGPT API?
Answer: The ChatGPT API is not included in the ChatGPT Plus subscription and is billed separately. The API has its own pricing, which can be found at OpenAI's Pricing Page (https://openai.com/pricing). The ChatGPT Plus subscription covers usage on chat.openai.com only and costs $20/month. -
Question: Are there any rate limits for the ChatGPT API?
Answer: Yes, there are rate limits for the ChatGPT API. For free trial users, it's 20 requests per minute (RPM) and 40,000 tokens per minute (TPM). For pay-as-you-go users, in the first 48 hours, it's 60 RPM and 60,000 TPM. After 48 hours, it's 3500 RPM and 90,000 TPM.
Please note that these answers are based on the information provided in the extracts and may require further exploration or clarification based on your specific use case.
Note: you can ask me a follow up question by @ mentioning me again :speech_balloon:
@stable verge kapa.ai is still learning and improving, please let us know how it did by reacting below
@lapis peak Can you add something from the cookbook?
Let me check the knowledge base for you. One moment! :books:
Sure, the OpenAI Cookbook provides a wealth of information on how to use OpenAI's APIs, including the ChatGPT API. Here are some relevant extracts:
- Token Counting: When you submit a request to the ChatGPT API, the messages are transformed into a sequence of tokens. The number of tokens used affects the cost of the request, the time it takes to generate the response, and when the reply gets cut off from hitting the maximum token limit. You can use OpenAI’s tiktoken (https://github.com/openai/tiktoken) Python library to count tokens in a text string without making an API call. Here's an example of how to count tokens from the OpenAI Cookbook (https://cookbook.openai.com/examples/how_to_format_inputs_to_chatgpt_models#4-counting-tokens):
import tiktoken
- Installation: If you haven't installed
tiktoken, you can do so using pip. Here's how to do it according to the OpenAI Cookbook (https://cookbook.openai.com/examples/how_to_count_tokens_with_tiktoken#0-install-tiktoken):
%pip install --upgrade tiktoken
%pip install --upgrade openai
- Token Counting Utilities: The OpenAI Cookbook also provides some helpful utilities for token counting. Here's an example from the OpenAI Cookbook (https://cookbook.openai.com/examples/chat_finetuning_data_prep#token-counting-utilities):
encoding = tiktoken.get_encoding("cl100k_base")
def num_tokens_from_messages(messages, tokens_per_message=3, tokens_per_name=1):
num_tokens = 0
for message in messages:
num_tokens += tokens_per_message
for key, value in message.items():
num_tokens += len(encoding.encode(value))
if key == "name":
num_tokens += tokens_per_name
num_tokens += 3
return num_tokens
def num_assistant_tokens_from_messages(messages):
num_tokens = 0
for message in messages:
if message["role"] == "assistant":
num_tokens += len(encoding.encode(message["content"]))
return num_tokens
Please note that these are just examples and you may need to adapt them to your specific use case.
----------------------
Note: you can ask me a follow up question by @ mentioning me again :speech_balloon:
----------------------