Skip to content

This package simplifies your interaction with various GPT models, removing the need for tokens or other methods to access GPT

License

Notifications You must be signed in to change notification settings

yandricr/gpti-py

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

22 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

GPTI

Downloads License Contributors Size Package Python

This package simplifies your interaction with various GPT models, eliminating the need for tokens or other methods to access GPT. It also allows you to use three artificial intelligences to generate images: DALLΒ·E, Prodia and more, all of this without restrictions or limits

Installation

You can install the package via PIP

pip install gpti

Available Models

GPTI provides access to a variety of artificial intelligence models to meet various needs. Currently, the available models include:

Api key

If you want to access the premium models, enter your credentials. You can obtain them by clicking here.

from gpti import nexra

nexra("user-xxxxxxxx", "nx-xxxxxxx-xxxxx-xxxxx");

Usage GPT

import json
from gpti import gpt

res = gpt.v1(messages=[
    {
        "role": "assistant",
        "content": "Hello! How are you today?"
    },
    {
        "role": "user",
        "content": "Hello, my name is Yandri."
    },
    {
        "role": "assistant",
        "content": "Hello, Yandri! How are you today?"
    }
], prompt="Can you repeat my name?", model="GPT-4", markdown=False)

if res.error() != None:
    print(json.dumps(res.error()))
else:
    print(json.dumps(res.result()))

Models

Select one of these available models in the API to enhance your experience.

  • gpt-4
  • gpt-4-0613
  • gpt-4-32k
  • gpt-4-0314
  • gpt-4-32k-0314
  • gpt-3.5-turbo
  • gpt-3.5-turbo-16k
  • gpt-3.5-turbo-0613
  • gpt-3.5-turbo-16k-0613
  • gpt-3.5-turbo-0301
  • text-davinci-003
  • text-davinci-002
  • code-davinci-002
  • gpt-3
  • text-curie-001
  • text-babbage-001
  • text-ada-001
  • davinci
  • curie
  • babbage
  • ada
  • babbage-002
  • davinci-002

Usage GPT v2

It's quite similar, with the difference that it has the capability to generate real-time responses via streaming using gpt-3.5-turbo.

import json
from gpti import gpt

res = gpt.v2(messages=[
    {
        "role": "assistant",
        "content": "Hello! How are you today?"
    },
    {
        "role": "user",
        "content": "Hello, my name is Yandri."
    },
    {
        "role": "assistant",
        "content": "Hello, Yandri! How are you today?"
    },
    {
        "role": "user",
        "content": "Can you repeat my name?"
    }
], markdown=False, stream=False)

if res.error() != None:
    print(json.dumps(res.error()))
else:
    print(json.dumps(res.result()))

Usage GPT v2 Streaming

import json
from gpti import gpt

res = gpt.v2(messages=[
    {
        "role": "assistant",
        "content": "Hello! How are you today?"
    },
    {
        "role": "user",
        "content": "Hello, my name is Yandri."
    },
    {
        "role": "assistant",
        "content": "Hello, Yandri! How are you today?"
    },
    {
        "role": "user",
        "content": "Can you repeat my name?"
    }
], markdown=False, stream=False)

if res.error() != None:
    print(json.dumps(res.error()))
else:
    for chunk in res.stream():
        print(json.dumps(chunk))

Usage GPT Web

GPT-4 has been enhanced by me, but errors may arise due to technological complexity. It is advisable to exercise caution when relying entirely on its accuracy for online queries.

import json
from gpti import gpt

res = gpt.web(prompt="Are you familiar with the movie Wonka released in 2023?", markdown=False)

if res.error() != None:
    print(json.dumps(res.error()))
else: 
    print(json.dumps(res.result()))

Usage GPT-4o

import json
from gpti import gpt

res = gpt.v3(messages=[
    {
        "role": "assistant",
        "content": "Hello! How are you today?"
    },
    {
        "role": "user",
        "content": "Hello, my name is Yandri."
    },
    {
        "role": "assistant",
        "content": "Hello, Yandri! How are you today?"
    },
    {
        "role": "user",
        "content": "Can you repeat my name?"
    }
], markdown=False, stream=False)

if res.error() != None:
    print(json.dumps(res.error()))
else:
    print(json.dumps(res.result()))

Usage GPT-4o Streaming

import json
from gpti import gpt

res = gpt.v3(messages=[
    {
        "role": "assistant",
        "content": "Hello! How are you today?"
    },
    {
        "role": "user",
        "content": "Hello, my name is Yandri."
    },
    {
        "role": "assistant",
        "content": "Hello, Yandri! How are you today?"
    },
    {
        "role": "user",
        "content": "Can you repeat my name?"
    }
], markdown=False, stream=False)

if res.error() != None:
    print(json.dumps(res.error()))
else:
    for chunk in res.stream():
        print(json.dumps(chunk))

Usage Bing

import json
from gpti import bing

res = bing(messages=[
    {
        "role" => "assistant",
        "content" => "Hello! How can I help you today? 😊"
    },
    {
        "role": "user",
        "content": "Can you tell me how many movies you've told me about?"
    }
], conversation_style="Balanced", markdown=False, stream=False)

if res.error() != None:
    print(json.dumps(res.error()))
else:
    print(json.dumps(res.result()))

Usage Bing Streaming

import json
from gpti import bing

res = bing(messages=[
    {
        "role" => "assistant",
        "content" => "Hello! How can I help you today? 😊"
    },
    {
        "role": "user",
        "content": "Can you tell me how many movies you've told me about?"
    }
], conversation_style="Balanced", markdown=False, stream=True)

if res.error() != None:
    print(json.dumps(res.error()))
else:
    for chunk in res.stream():
        print(json.dumps(chunk))

Parameters

Parameter Default Description
conversation_style Balanced You can use between: "Balanced", "Creative" and "Precise"
markdown false You can convert the dialogues into continuous streams or not into Markdown
stream false You are given the option to choose whether you prefer the responses to be in real-time or not

Usage LLaMA 3.1

import json
from gpti import llama

res = llama(messages=[
    {
        "role": "user",
        "content": "Hello! How are you? Could you tell me your name?"
    }
], markdown=False, stream=False)

if res.error() != None:
    print(json.dumps(res.error()))
else: 
    print(json.dumps(res.result()))

Usage LLaMA 3.1 Streaming

import json
from gpti import llama

res = llama(messages=[
    {
        "role": "user",
        "content": "Hello! How are you? Could you tell me your name?"
    }
], markdown=False, stream=True)

if res.error() != None:
    print(json.dumps(res.error()))
else: 
    for chunk in res.stream():
        print(json.dumps(chunk))

Usage Blackbox

import json
from gpti import blackbox

res = blackbox(messages=[
    {
        "role": "user",
        "content": "Hello! How are you? Could you tell me your name?"
    }
], markdown=False, stream=False)

if res.error() != None:
    print(json.dumps(res.error()))
else: 
    print(json.dumps(res.result()))

Usage Blackbox Streaming

import json
from gpti import blackbox

res = blackbox(messages=[
    {
        "role": "user",
        "content": "Hello! How are you? Could you tell me your name?"
    }
], markdown=False, stream=True)

if res.error() != None:
    print(json.dumps(res.error()))
else: 
    for chunk in res.stream():
        print(json.dumps(chunk))

AI Images

import json
from gpti import imageai

res = imageai(prompt="cat color red", model="dalle", response="url" | "base64", data={})

if res.error() != None:
    print(json.dumps(res.error()))
else:
    print(json.dumps(res.result()))

API Reference

Currently, some models require your credentials to access them, while others are free. For more details and examples, please refer to the complete documentation.

Code Errors

These are the error codes that will be presented in case the API fails.

Code Error Description
400 BAD_REQUEST Not all parameters have been entered correctly
500 INTERNAL_SERVER_ERROR The server has experienced failures
200 The API worked without issues
403 FORBIDDEN Your API key has expired and needs to be renewed
401 UNAUTHORIZED API credentials are required

About

This package simplifies your interaction with various GPT models, removing the need for tokens or other methods to access GPT

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Languages