Wo kann ich Tokens für GPT-4 kaufen?

Hallo,

ich programmiere gerade einen Sprachassistenten und wollte ihn nun mit GPT-4 verbinden, ich habe auf Shop - ChatGPT 50000 Tokens gekauft, doch wenn ich das Programm starte, steht, dass ich trotzdem keinen Zugriff auf GPT-4 habe. Muss ich die Tokens irgendwo anders kaufen?

Mein Code:

import openai
import pyttsx3
import re
import pyjokes
import speech_recognition as sr
from pyowm import OWM
import spotipy
from spotipy.oauth2 import SpotifyOAuth
import time
import random
import datetime
import pytz
from geopy.geocoders import Nominatim
from timezonefinder import TimezoneFinder


openai.api_key = 'sk-...'
model_id = "gpt-4"

engine = pyttsx3.init()


def recognize_speech():
    recognizer = sr.Recognizer()

    while True:
        with sr.Microphone() as source:
            print("Sage etwas...")
            audio = recognizer.listen(source, timeout=15)

        try:
            text = recognizer.recognize_google(audio, language="de-DE")
            print("Text: " + text)
            return text
        except sr.UnknownValueError:
            return "not_understood"
        except sr.RequestError as e:
            print(f"Fehler bei der Anfrage an die Google Web Speech API: {e}")
            return ""


def openai_request(prompt):
    response = openai.ChatCompletion.create(
        model=model_id,
        messages=prompt
    )

    api_usage = response['usage']
    print('Total Token consumed: {0}'.format(api_usage['total_tokens']))
    prompt.append({'role': response.choices[0].message.role, 'content': response.choices[0].message.content})
    return prompt


def speak(text):
    engine.say(text)
    engine.runAndWait()


def ausführen():
    while True:
        q = recognize_speech()
        print("Erkannter Text:", q)

        if q == "not_understood":
            speak("Entschuldigung! Das habe ich nicht verstanden.")
            break

        elif not q:
            break

        elif "hallo" in q:
            speak('Hallo! Womit kann ich dir behilflich sein?')
            break

        else:
            prompt = [{'role': 'user', 'content': q}]
            prompt = openai_request(prompt)
            response = prompt[-1]['content']
            speak(response)


if __name__ == '__main__':
    ausführen()

Fehlercode:

C:\Users\User\PycharmProjects\voiceAssistant\venv\interpreter\Scripts\python.exe C:\Users\User\PycharmProjects\voiceAssistant\main.py 

Sage etwas...

Text: wann war der erste Weltkrieg

Erkannter Text: wann war der erste Weltkrieg

Traceback (most recent call last):

 File "C:\Users\User\PycharmProjects\voiceAssistant\main.py", line 83, in <module>

  ausführen()

 File "C:\Users\User\PycharmProjects\voiceAssistant\main.py", line 77, in ausführen

  prompt = openai_request(prompt)

       ^^^^^^^^^^^^^^^^^^^^^^

 File "C:\Users\User\PycharmProjects\voiceAssistant\main.py", line 43, in openai_request

  response = openai.ChatCompletion.create(

        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

 File "C:\Users\User\PycharmProjects\voiceAssistant\venv\interpreter\Lib\site-packages\openai\api_resources\chat_completion.py", line 25, in create

  return super().create(*args, **kwargs)

      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

 File "C:\Users\User\PycharmProjects\voiceAssistant\venv\interpreter\Lib\site-packages\openai\api_resources\abstract\engine_api_resource.py", line 153, in create

  response, _, api_key = requestor.request(

              ^^^^^^^^^^^^^^^^^^

 File "C:\Users\User\PycharmProjects\voiceAssistant\venv\interpreter\Lib\site-packages\openai\api_requestor.py", line 298, in request

  resp, got_stream = self._interpret_response(result, stream)

            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

 File "C:\Users\User\PycharmProjects\voiceAssistant\venv\interpreter\Lib\site-packages\openai\api_requestor.py", line 700, in _interpret_response

  self._interpret_response_line(

 File "C:\Users\User\PycharmProjects\voiceAssistant\venv\interpreter\Lib\site-packages\openai\api_requestor.py", line 765, in _interpret_response_line

  raise self.handle_error_response(

openai.error.InvalidRequestError: The model `gpt-4` does not exist or you do not have access to it. Learn more: https://help.openai.com/en/articles/7102672-how-can-i-access-gpt-4.

Process finished with exit code 1

Freundliche Grüsse

kaufen, Code, Error, künstliche Intelligenz, Programmiersprache, Python, Python 3, token, Sprachassistent, Pycharm, ChatGPT
Warum ist dieser Code so schlecht /funktioniert fast nicht?

Hallo, ich bin an einem Sprachassistenten dran und bin gerade bei der "Speech-to-Text" Funktion. Das ist mein bisheriger Code:

import speech_recognition as sr


def aufnahme():
    r = sr.Recognizer()

    with sr.Microphone() as quelle:
        r.pause_threshold = 0.8
        r.adjust_for_ambient_noise(quelle)
        gesagt = r.listen(quelle)

    try:

        q = r.recognize_google(gesagt, language="de")
        print("Recognized speech (Google):", q)
        return q

    except sr.UnknownValueError:
        print('Leider nicht verstanden (Google)')
        print("Recognized speech (Google):", r.recognize_google(gesagt, show_all=True, language="de"))

    except sr.RequestError as e:
        print(f'Fehler bei Sphinx-Erkennung: {e}')
        return "Ich warte auf Anweisungen"


# Call the function
result = aufnahme()
print(result)

Jedoch funktioniert er richtig schlecht, er versteht höchstens zwei Wörter und in 90% der Fälle kommt dieser Fehlercode:

Leider nicht verstanden (Google)

Traceback (most recent call last):

 File "C:\Users\...\PycharmProjects\voiceAssistant\main.py", line 21, in aufnahme

  q = r.recognize_google(gesagt, language="de")

 File "C:\Users\...\lib\site-packages\speech_recognition\recognizers\google.py", line 251, in recognize_legacy

  return output_parser.parse(response_text)

 File "C:\Users\...\lib\site-packages\speech_recognition\recognizers\google.py", line 124, in parse

  actual_result = self.convert_to_result(response_text)

 File "C:\Users\....\lib\site-packages\speech_recognition\recognizers\google.py", line 173, in convert_to_result

  raise UnknownValueError()

speech_recognition.exceptions.UnknownValueError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

 File "C:\Users\...\PycharmProjects\voiceAssistant\main.py", line 35, in <module>

  result = aufnahme()

 File "C:\Users\...\PycharmProjects\voiceAssistant\main.py", line 27, in aufnahme

  print("Recognized speech (Google):", r.recognize_google(gesagt, show_all=True, language="de"))

 File "C:\Users\...\lib\site-packages\speech_recognition\recognizers\google.py", line 251, in recognize_legacy

  return output_parser.parse(response_text)

 File "C:\Users\...\lib\site-packages\speech_recognition\recognizers\google.py", line 124, in parse

  actual_result = self.convert_to_result(response_text)

 File "C:\Users\...\lib\site-packages\speech_recognition\recognizers\google.py", line 173, in convert_to_result

  raise UnknownValueError()

speech_recognition.exceptions.UnknownValueError

Process finished with exit code 1

Woran liegt das, soll ich eine andere Speech Recognition verwenden und wenn ja welche?

Vielen Dank im Voraus!

Assistent, cmd, Code, Error, Problemlösung, Programmiersprache, Python, Python 3, Sprachassistent, Pycharm
Wie kann ich das anders Umsetzen (Python 3)?

Hi also ich mach mir einen kleinen Sprachassistenten Bot ist nichts zum veröffentlichen oder so ich mach mir das halt um während dem Zocken mal sagen zu können spiel playlist ... usw. Speech to Text usw klappt alles Wunderbar nur das Music Spielen macht klitze bisschen Probleme. Ich will das "main.py" weiter zuhört nachdem ich subprocess.call() gemacht habe aber in dem script das ich damit augerufen habe ist so etwas wie time.sleep() damit die music weiter spielt.

Teil meiner Main.py:


if "spiel" in txt:
    if "playlist" in txt:
        if "1" in txt:
            say("Playlist 1 wird Wiedergegeben.")
            subprocess.call(["C:\\Users\\Zensiert\\AppData\\Local\\Programs\\Python\\Python38\\pythonw.exe", "playlist1.py", "play"])
            os.execv(sys.executable, ['python3'] + sys.argv)

if "pause" in txt:
    say("Musik wird Pausiert")
    subprocess.call(["C:\\Users\\Zensiert\\AppData\\Local\\Programs\\Python\\Python38\\pythonw.exe", "playlist1.py", "pause"])

Und hier meine playlist1.py

import pygame
import sys, getopt

arguments = str(sys.argv)

pygame.init()

pygame.mixer.music.load('C:\\Users\\Zensiert\\IdeaProjects\\LibreOfficeSprachAssistent\\.idea\\songs\\playlist1\\streets.mp3')
if(sys.argv[1]== 'play'):
    pygame.mixer.music.play()

elif(sys.argv[1] == 'pause'):
    pygame.mixer.music.pause()

print(f"Arg Input      : {sys.argv[1]=}")

clock = pygame.time.Clock()
while pygame.mixer.music.get_busy():
    clock.tick(309)
    pygame.event.poll() 

Das Script spielt die Musik und es klappt auch alles aber ich kann halt erst wieder reden wenn ich 309 Sekunden (Wegen dem "clock.tick(309)") gewartet habe. Jemand eine Idee? Ich weiß alles nicht so gut erklärt sorry

PC, Computer, Windows, Programm, Sprache, programmieren, System, Bot, Informatik, Playlist, Python, debugging, Wiedergabe, Pygame, Sprachassistent, IntelliJ IDEA

Meistgelesene Fragen zum Thema Sprachassistent