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 öffnet sich Waydroid nicht?

Versuche seit Ewigkeiten, dass Waydroid auf meinem Raspberry Pi5 auf PiOS 64-Bit zum laufen zu bringen. Ich bin noch absoluter Anfänger in diesem Thema, den ich habe den Pi5 erst seit letzter Woche und Programmiererfahren bin ich auch nicht.

Anfangs hatte ich RealVNC verwendet, was aber das Problem mit Wayland und X11 hatte. Also habe ich meine Tastatur und Maus alles am Pi5 angeschlossen ohne VNC. Heute habe ich mir TigerVNC mal heruntergeladen und es kam der selbe Fehler raus wie beim Pi5 alles angeschlossen ohne VNC. Scheinbar hat TigerVNC keine Wayland/X11 Probleme. Jedoch ist ein OSError aufgetreten.
OS Error:

 @raspberrypi:~ $ waydroid --details-to-stdout show-full-ui
(009534) [15:43:53] Starting waydroid session
(009534) [15:44:03] org.freedesktop.DBus.Python.OSError: Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/dbus/service.py", line 712, in _message_cb
    retval = candidate_method(self, *args, **keywords)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/waydroid/tools/actions/container_manager.py", line 34, in Start
    do_start(self.args, session)
  File "/usr/lib/waydroid/tools/actions/container_manager.py", line 189, in do_start
    helpers.lxc.start(args)
  File "/usr/lib/waydroid/tools/helpers/lxc.py", line 397, in start
    wait_for_running(args)
  File "/usr/lib/waydroid/tools/helpers/lxc.py", line 391, in wait_for_running
    raise OSError("container failed to start")
OSError: container failed to start


(009534) [15:44:03] OSError: container failed to start

Waydroid Version:

@raspberrypi:~ $ waydroid -V
1.4.2

System info:

@raspberrypi:~ $ echo $XDG_SESSION_TYPE
wayland

@raspberrypi:~ $  cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

Danke schon mal im Voraus für jede Hilfe. Und nochmals der OSError ist bei TigerVNC und auch aufgetreten wo ich Ohne VNC den Raspi 5 Manuel gesteuert habe. Noch dazu ich habe keine Ahnung wie man es Richtig liest.

Linux, IT, Code, Error, Python, 64-Bit, Debian, Raspberry Pi
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
python - dict -Iterite nicht durch?

dict

 {"26-11-2023": {"1": {"enos": {"infinitivee": "enormous", "k": "b"}},"25-11-2023": {"1": {"enor": {"infinitivee": "enormous", "k": "b"}}}}}

code:

def read_json():
    daters = []
    # sefly read json file
    try:
        with open('German-English_wordlist.json', 'r', encoding="utf-8-sig") as f:
            data = json.load(f)
    except json.decoder.JSONDecodeError:
        print("\033[91m[!!] File empty or anything wrong in file\033[0m", end=" - ")
        print("\033[93mTry running `add` command\033[0m", end="\n")
        return
    except FileNotFoundError:
        print("\033[91m[!!] File not found\033[0m", end=" - ")
        print("\033[93mTry running `add` command to create\033[0m", end="\n")
        return
    except Exception:
        print("\033[91m[!!]Unknown error \033[0m", end=" - ")
        print("\033[93mTry to report\033[0m", end="\n")
        print(Exception)
        return
    # check valid vocabulary daters
    #KeyError: '25-11-2023'
    try:
        for key in data.keys():
            print(data)
            print(data['25-11-2023'])
            print(key)
            if timestamp >= int(datetime.datetime.strptime(key, '%d-%m-%Y').strftime("%s")) and timestamp != "---":
                daters.append(key)

    except UnboundLocalError:
        print("\033[91m[!!] File empty or anything wrong in file\033[0m", end=" - ")
        print("\033[93mTry running `add` command\033[0m", end="\n")
        return
    # if not a dater in then print finish and break else choice random on of them
    print(daters)
    try:
        dater = random.choice(daters)
    except IndexError:
        print("\033[93mFinish\033[0m\n")
        return

    queried = [key for key in data[dater].keys()]
    queried = random.choice(queried)
    keys = [key for key in data[dater][queried].keys()]
    key = random.choice(keys)
    forms = [key for key in data[dater][queried][key].keys()]

    # depending on the mode asking for the form of the word
    if False:
        form = random.choice(forms)
    else:
        form = "infinitivee"

    value = data[dater][queried][key][form]

    return data, dater, queried, key, form, value

output:

{'26-11-2023': {'1': {'enos': {'infinitivee': 'enormous', 'k': 'b'}}, '25-11-2023': {'1': {'enor': {'infinitivee': 'enormous', 'k': 'b'}}}}}
Traceback (most recent call last):
  File "/media/deffer/User_data/Tools/vokabularis/vokabularis.py", line 135, in <module>
    data, choused_dater, queried, key, form, value = read_json()
  File "/media/deffer/User_data/Tools/vokabularis/vokabularis.py", line 44, in read_json
    print(data['25-11-2023'])
KeyError: '25-11-2023'

Wenn ich mein dictionary zum volgendem andere, funktioniert alles.

{"25-11-2023": {"1": {"enor": {"infinitivee": "enormous", "k": "b"}}}, "26-11-2023": {"1": {"enos": {"infinitivee": "enormous", "k": "b"}}}}

code:

ist der selbe wie davor

Output:

Successed
Code, Error, Python 3
TypeError bei Python-Programm?

Ich habe folgendes Programm:

import itertools

# Daten aus der Tabelle einlesen
data = []
with open('tour1.txt', 'r') as file:
    for line in file:
        parts = line.strip().split(',')
        data.append((parts[0], int(parts[1]), parts[2] == 'X'))

# Essentielle Tourpunkte auswählen
essential_points = [place for place, year, is_essential in data if is_essential]

# Funktion zur Berechnung der Teiltour
def calculate_tour(places, essential_places):
    min_distance = float('inf')
    min_tour = None

    for perm in itertools.permutations(essential_places):
        tour = [places[0][0]] + [places[i][0] for i in perm] + [places[0][0]]
        total_distance = 0

        for i in range(len(tour) - 1):
            total_distance += abs([x[1] for x in places if x[0] == tour[i]][0] - [x[1] for x in places if x[0] == tour[i + 1]][0])

        if total_distance < min_distance:
            min_distance = total_distance
            min_tour = tour

    return min_tour

# Sortieren der Orte nach ihrem Jahr
sorted_data = sorted(data, key=lambda x: x[1])

# Die Teiltour berechnen
shortest_tour = calculate_tour(sorted_data, essential_points)

# Ergebnis ausgeben
for point in shortest_tour:
    print(point, end=" -> ")
print(shortest_tour[0])  # Zum Startpunkt zurückkehren

Beim Ausführen wird mir folgender Fehler ausgegeben: TypeError: list indices must be integers or slices, not str

Die Textdatei ist nach dem Format "Brauerei,1613,X,0" (als Beispiel) aufgebaut.
Ich habe probiert das Problem durch ein voranstellen von Int() bei den Listen zu Lösen, was nicht funktioniert hat...
Gibt es eine andere Möglichkeit zur Lösung?

Vielen Dank!

Error, Programmiersprache, Python
Wie kann ich die Fehler von PHP einzeln in der Unity-Konsole ausgeben?

Hallo,

wie schaffe ich es, die Fehler zu splitten und wenn es z.B. zwei Fehler sind, beide einzeln in Unity in der Konsole auszugeben?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
using UnityEngine.UI;
using TMPro;
using System;
using Newtonsoft.Json;

public class RegisterUser : MonoBehaviour
{
  public TMP_InputField EmailInput;
  public TMP_InputField UsernameInput;
  public TMP_InputField PasswordInput;

  private void Update()
  {
  }

  public void RegisterButton()
  {
    StartCoroutine(Register(EmailInput.text, UsernameInput.text, PasswordInput.text));
  }

  IEnumerator Register(string email, string username, string password)
  {
    string url = "geheim";

    WWWForm form = new WWWForm();
    form.AddField("email", email);
    form.AddField("username", username);
    form.AddField("password", password);

    using (UnityWebRequest www = UnityWebRequest.Post(url, form))
    {
      yield return www.SendWebRequest();

      if www.result != UnityWebRequest.Result.Success)
      {
        Debug.Log("Error: " + www.error);
      }
      else
      {
        // hier Fehler checken
      }
    }
  }
}

Meine PHP if-Abfrage, wo mögliche Fehler ermittelt werden:

if (blablazeug) {
  if ($resultemail->num_rows > 0) {
    echo  "1"; // errorcode for already used email
  }

  if ($resultuser->num_rows > 0) {
    echo  "2"; // error code for already used username
  }

  if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    echo  "3"; // error code for wrong email
  }

  if (strlen($username) < 4 || strlen($username) > 10 || !preg_match('/^[a-zA-Z0-9]+$/', $username)) {
    echo  "4"; // error code for wrong username conditions
  }

  if (strlen($password) < 6 || strlen($password) > 20 || !preg_match('/[0-9]+/', $password) || !preg_match('/[A-Z]+/', $password) || !preg_match('/[a-z]+/', $password) || !preg_match('/[.,!@#$%^&*()\-_=+{};:?]+/', $password)) {
    echo "5"; // error code for wrong password conditions
  }

  die();
}
C Sharp, Error, PHP, Programmiersprache, Visual Studio, Unity
Error bei Elegoo RFID-RC522-Sensor?

Hallo,

ich versuche von meinem Elegoo Uno R3 auf dem RFID-RC522 meinen NFC-Tag auszulesen, aber es kommt nur der folgende Error:

Card UID: BC FD E1 37
Failed to authenticate to card for reading, could not set UID: 
Timeout in communication.
New UID and contents:
Card UID: BC FD E1 37
Card SAK: 08
PICC type: MIFARE 1KB
Sector Block  0 1 2 3  4 5 6 7  8 9 10 11 12 13 14 15 AccessBits
 15   63 PCD_Authenticate() failed: Timeout in communication.
 14   59 PCD_Authenticate() failed: Timeout in communication.
 13   55 PCD_Authenticate() failed: Timeout in communication.
 12   51 PCD_Authenticate() failed: Timeout in communication.
 11   47 PCD_Authenticate() failed: Timeout in communication.
 10   43 PCD_Authenticate() failed: Timeout in communication.
  9   39 PCD_Authenticate() failed: Timeout in communication.
  8   35 PCD_Authenticate() failed: Timeout in communication.
  7   31 PCD_Authenticate() failed: Timeout in communication.
  6   27 PCD_Authenticate() failed: Timeout in communication.
  5   23 PCD_Authenticate() failed: Timeout in communication.
  4   19 PCD_Authenticate() failed: Timeout in communication.
  3   15 PCD_Authenticate() failed: Timeout in communication.
  2   11 PCD_Authenticate() failed: Timeout in communication.
  1   7 PCD_Authenticate() failed: Timeout in communication.
  0   3 PCD_Authenticate() failed: Timeout in communication.

Liegt es daran, dass ich den Tag schon mal beschrieben habe? Und wie kann ich das Problem lösen?

LG

Error, RFID, NFC, NFC-Tag, Elegoo
Weirder fehler bei Unity?

hi leute, ich habe mal wieder ein problem (was war auch anderes zu erwarten...) und diesmal handelt es sich um Unity.

die sache ist die, ich habe von unity hub die version 3.5.0 und der unity editor den ich installiert habe ist version Unity 2022.3.7f1.

das tut aber leider nix zur sache, denn egal welche editor version ich nutze, der fehler ist derselbe und jedesmal aufs neue bestehend.

denn das eigentliche problem um was es geht, das mich daran hindert unity zu nutzen ist folgendes: ich öffe unity hub und erstelle ein komplett frisches projekt. ich habe keine vorherigen mehr, da ichdiese alle gelöscht habe.

dann wähle ich 3d projekt aus und warte, bis alle dateien fertig geladen und kopiert wurden (oder was da auch immer passiert) und sobald unit fertig mit laden ist wird der unity editor geöffnet (also wie gewohnt) aber das ganze sieht so aus:

es ist folgendermaßen:

ich klicke auf den x button, es lädt und kurz darauf schließt sich der editor. da einzige was offen bleibt ist der unity hub. wenn ich auf den "Quit" button klicke passiert eins zu eins der selbe mist.

wenn ich jedoch auf den "continue" button klicke lädt es kurz und das selbe erschein erneut. es ist egal wie oft ich auf continue drücke, es erscheint immer wieder dieselbe nachricht.

kennt jemand eine lösung für das problem, wenn ja dann wäre ich euch echt verbunden.

(übrigens habe ich schon versuch unity komplett zu deinstallieren und danach wier neu zu installieren aber das problem besteht noch immer.)

vielen lieben dank im voraus.

Bild zum Beitrag
Windows, C Sharp, Error, Programmiersprache, Spieleentwicklung, Unity 3D, Plattform, Message, Unity, Windows 10
Minecraft Sodium 1.20.1 - 0.5.1 Render Error, was tun?

Ich habe ein eigenes Modpack bei Curseforge erstellt. Es läuft über Fabric!

Wenn ich Minecraft starte, funktioniert noch alles, sobald ich allerdings einem Server / einer Welt beitrete, crasht mein Spiel!

Hier ist die Error meldung aus dem Debug Menü:

Description: Unexpected error

java.lang.NoSuchMethodError: 'void me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.onChunkAdded(int, int)'

at de.johni0702.minecraft.bobby.sodium.SodiumChunkStatusListenerImpl.onChunkAdded(SodiumChunkStatusListenerImpl.java:10)

at de.johni0702.minecraft.bobby.sodium.BufferedChunkStatusListener.onChunkAdded(BufferedChunkStatusListener.java:18)

at net.minecraft.class_631.bobby_onFakeChunkAdded(class_631.java:2522)

at net.minecraft.class_631.handler$zha000$bobby$bobbyPostLoadRealChunk(class_631.java:1097)

at net.minecraft.class_631.method_16020(class_631.java:123)

at net.minecraft.class_634.method_38539(class_634.java:773)

at net.minecraft.class_634.method_11128(class_634.java:738)

at net.minecraft.class_2672.method_11528(class_2672.java:45)

at net.minecraft.class_2672.method_11054(class_2672.java:12)

at net.minecraft.class_2600.method_11072(class_2600.java:22)

at net.minecraft.class_1255.method_18859(class_1255.java:156)

at net.minecraft.class_4093.method_18859(class_4093.java:23)

at net.minecraft.class_1255.method_16075(class_1255.java:130)

at net.minecraft.class_1255.method_5383(class_1255.java:115)

at net.minecraft.class_310.method_1523(class_310.java:1175)

at net.minecraft.class_310.method_1514(class_310.java:802)

at net.minecraft.client.main.Main.main(Main.java:250)

at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468)

at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)

at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)

Was kann ich tun, damit der Error nicht mehr kommt?

Mods, Minecraft, Error, sodium

Meistgelesene Beiträge zum Thema Error