Programmiersprache – die neusten Beiträge

Wie kann ich machen, dass OpenAI mich duzt?

Hallo,

wie kann ich bei diesem Code machen, dass mich OpenAI bei allen Fragen, die es mir beantwortet, duzt und nicht siezt?

import pyttsx3
import re
import pyjokes
import speech_recognition as sr
import geocoder
import datetime
import pytz
from geopy.geocoders import Nominatim
from timezonefinder import TimezoneFinder
import openai

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

engine = pyttsx3.init()


def recognize_speech(recognizer, source):
    print("Sage etwas...")
    audio = recognizer.listen(source, timeout=10)
    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=[{"role": "user", "content": prompt}],
        max_tokens=150
    )

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


def speak(text=None):
    if text:
        engine.say(text)
        engine.runAndWait()


def hey_luna_in_q(q):
    return "luna" in q.lower()


def wait_for_wake_word(recognizer, source):
    while True:
        print("Warte auf Wake-Word...")
        audio = recognizer.listen(source)
        try:
            text = recognizer.recognize_google(audio, language="de-DE")
            if hey_luna_in_q(text):
                print("Wake-Word erkannt!")
                return
        except sr.UnknownValueError:
            pass
        except sr.RequestError as e:
            print(f"Fehler bei der Anfrage an die Google Web Speech API: {e}")


def get_local_time(location_name):
    try:
        if location_name.lower() == "current location":
            current_location = geocoder.ip('me')
            latitude, longitude = current_location.latlng
        else:
            geolocator = Nominatim(user_agent="voiceAssistant")
            location = geolocator.geocode(location_name)

            if not location:
                return "Ort nicht gefunden"

            latitude = location.latitude
            longitude = location.longitude

        tf = TimezoneFinder()
        timezone = tf.timezone_at(lng=longitude, lat=latitude)

        if timezone:
            local_time = datetime.datetime.now(pytz.timezone(timezone))
            return local_time.strftime("%H:%M")
        else:
            return "Unbekannte Zeitzone"
    except Exception as e:
        print("Fehler beim Abrufen der lokalen Zeit:", e)
        return "Fehler"


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

    witz_erzählt = False  # Variable, um den Zustand des Witzes zu verfolgen

    with sr.Microphone() as source:
        while True:
            wait_for_wake_word(recognizer, source)
            print("Warte auf Wake-Word...")

            q = recognize_speech(recognizer, source)
            print("Erkannter Text:", q)

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

            if "hallo" in q.lower():
                speak("Hallo! Womit kann ich dir behilflich sein?")
                continue

            if "wie geht es dir" in q.lower():
                speak("Mir geht es gut, danke! Wie geht es dir?")
                continue

            if "spät ist es in" in q.lower() or "wieviel uhr ist es in" in q.lower() or "wieviel uhr in" in q.lower() or "zeit in" in q.lower() or "uhrzeit in" in q.lower():
                location_name = q.split("in")[-1].strip()
                print("Extrahierter Ortname:", location_name)
                local_time = get_local_time(location_name)
                print("Lokale Zeit für", location_name, ":", local_time)
                if local_time:
                    speak(f"In {location_name} ist es {local_time}.")
                else:
                    speak(f"Entschuldigung, ich konnte die Zeit für {location_name} nicht finden.")
                continue

            if "spät ist es" in q.lower() or "wieviel uhr" in q.lower() or "zeit in" in q.lower() or "uhrzeit in" in q.lower():
                current_location = geocoder.ip('me')
                latitude, longitude = current_location.latlng
                local_time = get_local_time("current location")
                speak(f"Es ist {local_time}.")
                continue

            if "erzähle mir einen witz" in q.lower() or "erzähl mir einen witz" in q.lower() or "ich möchte einen witz hören" in q.lower():
                joke = pyjokes.get_joke(language='de')
                speak(joke)
                witz_erzählt = True
                continue

            if "ich bin traurig" in q.lower() or "mir geht es nicht gut" in q.lower() or "es geht mir nicht gut" in q.lower() or "mir geht es schlecht" in q.lower():
                if not witz_erzählt:
                    speak("Das tut mir leid zu hören. Ich bin hier für dich, wenn du reden möchtest oder jemanden zum Zuhören brauchst. Soll ich dir zum Aufmuntern einen Witz erzählen?")
                    response = recognize_speech(recognizer, source)
                    if "ja" in response.lower():
                        joke = pyjokes.get_joke(language='de')
                        speak(joke)
                        continue
                    elif "nein" in response.lower():
                        speak("Ok, womit kann ich dir sonst behilflich sein?")
                        continue
                    else:
                        speak("Entschuldigung. Ich habe dich nicht verstanden.")
                        continue

            prompt = q
            response = openai_request(prompt)

            if response.lower().startswith(q.lower()):
                response = response[len(q):].strip()

            speak(response)


if __name__ == '__main__':
    execute()

Freundliche Grüsse

Code, künstliche Intelligenz, Programmiersprache, Python, Python 3, Pycharm, ChatGPT

Welches Backend + Hosting für kleine Webseiten?

Ich möchte eine Webseite für ein kleines Unternehmen erstellen.

Sie wird ziemlich Frontend-lastig sein bis auf ein zwei Besonderheiten:

  • Ein Kontakt-Formular, bei dem man eine Nachricht eingeben kann, die dem Unternehmer dann automatisch per Email zugesandt wird
  • Ein Blog, bei dem der Unternehmer selbst Posts (bestehend aus Text & Bildern) erstellen kann, in einer Art Admin-Panel mit WYSIWYG-Editor, und diese direkt oder zu einem bestimmten Zeitpunkt automatisch veröffentlichen kann

Beim Frontend fällt die Technologie-Auswahl noch relativ leicht, TypeScript und ein gängiges Framework wie z.B. React.
Als Datenbank würde ich MySQL oder PostgreSQL verwenden.

Beim Backend weiß ich nun aber nicht weiter.

Welches Framework würde sich für eine Webseite dieser Größe am besten anbieten?
Es sollte beim Hosting billig sein (z.B. durch niedrigen RAM-Verbrauch), der Code sollte einfach und schnell zu schreiben sein, und es sollte die oben genannten Features möglichst einfach ermöglichen.

Express, Next.js, Laravel, Django, Flask, ASP.Net, Spring, ... ?
Was würdet ihr nehmen und warum?

Und zum Hosting, muss ich die Webseite auf einem vServer hosten, oder reicht auch ein Webspace?

Homepage, HTML, Webseite, programmieren, CSS, WordPress, Java, JavaScript, ASP.NET, Datenbank, Express, Hosting, Informatik, PHP, Programmiersprache, Python, Softwareentwicklung, vServer, Webdesign, Webentwicklung, Webspace, Backend, Frontend, Flask

An alle C# & Visual Studio Programmierer?

Hey Developers,

hier mal etwas Hate mit einer wichtigen Frage.

Ich versuch zurzeit ASP.Net Core mit C# für Web Backend zu lernen. Ich kann bisher HTML, CSS, JavaScript, React, Python (Django) und etwas Java (Spring Boot) sowie etwas C++ (Arduino).

Das war alles ganz entspannt zu lernen, aber C# mit Visual Studio gibt mir den Rest, ich schaffe es einfach nicht ein Projekt zu erstellen.

Mein Problem dabei ist, dass alle Dokus und YT Videos auf "vorgefertigte" Projektvorlagen setzten, allerdings schein Microsoft durchgehend an der UI von Visual Studio und an den Vorlagen etwas zu ändern und das macht mich nach meinem 20. Anlauf wahnsinnig. Egal welches Video ich anschauen (selbst wenn es nur 6 Monate alt ist) das komplette Projekte hat im Video eine ganz andere Struktur (und ja ich habe genau die selbe Vorlage mit der selben Version von .NET) und wenn ich halt keine Ahnung von der Umgebung habe kann ich das auch schlecht irgendwie nachbauen.

Daher mal ne Frage: Mach ich hier etwa irgendwas falsch (ne falsche Einstellung im Installer) oder ändert Microsoft wirklich alle paar Monate etwas an der Umgebung oder an Visual Studio?

Ich stelle mir das später auch einfach nur nervig vor, wenn man mal die Sprache & Umgebung kann, aber bei jedem neuem Projekt eine andere Projektstruktur hat.

Nutzt ihr die Vorlagen überhaupt, oder macht das einfach nur jeder, um seine Videos einfacher zu halten?

Erstellt ihr bei einem neuem Projekt einfach ein leeres .NET Projekt und erstellt dort selbst die Grundstruktur, oder verwendet ihr wirklich die vorgefertigten Projekte wie z.B. "React and ASP.NET Core" (welche euch eine Wetter-Seite erstellt) und löscht dann erstmal sämtlichen Code von der Wetter-Seite aus den Dateien und fangt dann mit eurem Projekt an?

ASP.NET, C Sharp, Programmiersprache, Visual Studio

Warum kann ich OpenAI nicht im Terminal verwenden?

Hallo,

ich programmiere gerade einen Sprachassistenten. Das ist der Code dafür:

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
import sounddevice as sd
import pvporcupine
import openai

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

engine = pyttsx3.init()


def recognize_speech(recognizer, 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.Completion.create(
        model=model_id,
        messages=[{"role": "user", "content": prompt}],
        max_tokens=150
    )

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


def speak(text=None):
    if text:
        engine.say(text)
        engine.runAndWait()


def hey_luna_in_q(q):
    return "hey luna" in q.lower()


def wait_for_wake_word(recognizer, source):
    while True:
        print("Warte auf Wake-Word...")
        audio = recognizer.listen(source)
        try:
            text = recognizer.recognize_google(audio, language="de-DE")
            if hey_luna_in_q(text):
                print("Wake-Word erkannt!")
                return
        except sr.UnknownValueError:
            pass
        except sr.RequestError as e:
            print(f"Fehler bei der Anfrage an die Google Web Speech API: {e}")


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

    with sr.Microphone() as source:
        wait_for_wake_word(recognizer, source)

        while True:
            q = recognize_speech(recognizer, source)
            print("Erkannter Text:", q)

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

            if "hallo" in q.lower():
                speak("Hallo! Womit kann ich dir behilflich sein?")
                continue

            prompt = q
            response = openai_request(prompt)

            if response.lower().startswith(q.lower()):

                response = response[len(q):].strip()

            speak(response)
            return


if __name__ == '__main__':
    execute()

Wenn ich in PyCharm das Programm ausführe und dann z.B. frage: Wann war der erste Weltkrieg? Dann funktioniert alles perfekt (ich bekomme eine Antwort und es gibt keine Fehler). Wenn ich das Programm nun aber im Terminal ausführe, kommt dieser Fehlercode:

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 106, in <module>

  execute()

 File "C:\Users\User\PycharmProjects\voiceAssistant\main.py", line 95, in execute

  response = openai_request(prompt)

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

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

  response = openai.Completion.create(

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

 File "C:\Users\User\AppData\Local\Programs\Python\Python312\Lib\site-packages\openai\lib\_old_api.py", line 39, in __call__

  raise APIRemovedInV1(symbol=self._symbol)

openai.lib._old_api.APIRemovedInV1:

You tried to access openai.Completion, but this is no longer supported in openai>=1.0.0 - see the README at https://github.com/openai/openai-python for the API.

You can run `openai migrate` to automatically upgrade your codebase to use the 1.0.0 interface.

Alternatively, you can pin your installation to the old version, e.g. `pip install openai==0.28`

A detailed migration guide is available here: https://github.com/openai/openai-python/discussions/742

C:\Users\User\PycharmProjects\voiceAssistant>

Ich weiss wirklich nicht, wie ich diesen Fehler beheben kann. Bitte helft mir.

Freundliche Grüsse

Code, künstliche Intelligenz, Programmiersprache, Python, Terminal, Python 3, Pycharm, ChatGPT

Warum wird das Wake Word nicht erkannt?

Hallo,

ich programmiere momentan einen Sprachassistenten und bin gerade am Wake Word dran. Mein Code sieht so aus:

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
import sounddevice as sd
import pvporcupine
import openai

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

engine = pyttsx3.init()


def recognize_speech(recognizer, 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 picovoice_listen():
    keyword_file_path = "C:\\Hey-Luna_de_windows_v3_0_0\\Hallo-Luna_de_windows_v3_0_0.ppn"
    sensitivities = [0.7]

    try:
        porcupine = pvporcupine.create(
            access_key='...',
            keyword_paths=['C:\\Hey-Luna_de_windows_v3_0_0\\Hallo-Luna_de_windows_v3_0_0.ppn'],
            model_path='C:\\Hey-Luna_de_windows_v3_0_0\\porcupine_params_de.pv'
        )

        sample_rate = porcupine.sample_rate
        print("Sample Rate:", sample_rate)

        pcm = record_audio(sample_rate=sample_rate, duration=3)
        keyword_index = porcupine.process(pcm)

        if keyword_index >= 0:
            print("Wake word detected!")
            porcupine.delete()
            return True
        else:
            print("Wake word not detected!")

    except pvporcupine.PorcupineError as e:
        print(f"Porcupine error: {e}")

    return False


def record_audio(sample_rate, duration):
    print("Aufnahme gestartet...")
    audio = sd.rec(int(sample_rate * duration), samplerate=sample_rate, channels=1, dtype='int16')
    sd.wait()
    print("Aufnahme beendet.")
    return audio.flatten()[:512]


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():
    recognizer = sr.Recognizer()

    while True:
        if picovoice_listen():
            with sr.Microphone() as source:
                q = recognize_speech(recognizer, source)
                print("Erkannter Text:", q)

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

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

                else:
                    prompt = [{'role': 'user', 'content': q}]
                    prompt = openai_request(prompt)
                    response = prompt[-1]['content']
                    speak(response)
                    return  # Programm beenden, nachdem die Antwort gesprochen wurde


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

wenn ich nun aber das Programm ausführe und das Wake Word ("Hallo Luna") sage, kommt immer "Wake word not detected!" und dann wiederholt sich das ganze, egal wie oft ich das Wake word sage. Woran liegt das?

Freundliche Grüsse

Code, künstliche Intelligenz, Programmiersprache, Python, Python 3, Pycharm

Warum Funktioniert mein Wake Word nicht?

Hallo,

ich programmiere gerade einen Sprachassistenten und bin gerade am Wake Word dran. Mein Code sieht so aus:

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
import sounddevice as sd
import pvporcupine

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

engine = pyttsx3.init()

WAKE_WORD_MODEL_FILE_PATH = "C:\\Hey-Luna_de_windows_v3_0_0\\Hey-Luna_de_windows_v3_0_0.ppn"


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 record_audio(sample_rate, duration):
    print("Aufnahme gestartet...")
    audio = sd.rec(int(sample_rate * duration), samplerate=sample_rate, channels=1, dtype='int16')
    sd.wait()
    print("Aufnahme beendet.")
    return audio.flatten()


def picovoice_listen():
    keyword_file_path = "C:\\Hey-Luna_de_windows_v3_0_0\\Hey-Luna_de_windows_v3_0_0.ppn"
    sensitivities = [0.5]  # Adjust as needed

    try:
        handle = pvporcupine.create(
            keyword_paths=[keyword_file_path],
            sensitivities=sensitivities,
            access_key='...'
        )

        sample_rate = handle.sample_rate

        while True:
            pcm = record_audio(sample_rate=sample_rate, duration=15)
            keyword_index = handle.process(pcm)

            if keyword_index >= 0:
                print("Wake word detected!")
                break

    except pvporcupine.PorcupineError as e:
        print(f"Porcupine error: {e}")

    finally:
        if 'handle' in locals():
            handle.delete()


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:
        picovoice_listen()

        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?')
            continue

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


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

wenn ich nun aber das Programm ausführe, kommt diese Meldung und ich muss das Wake Word nicht sagen, um meine Frage zu stellen, welche dann von z.B. OpenAI beantwortet wird:

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

Porcupine error: Initialization failed:

 [0] Keyword file (.ppn) and model file (.pv) should belong to the same language. File belongs to `de` while model file (.pv) belongs to `en`.

Sage etwas...

woran liegt das?

Freundliche Grüsse

Code, künstliche Intelligenz, Programmiersprache, Python, Python 3, Pycharm, ChatGPT

Arduino nano exit Status 1?

Guten nachmittag

Ich habe mir einen Arduino nano gekauft und wollte ihn ausprobieren, jedoch passiert immer wenn ich es hochladen will das:

Der Sketch verwendet 1506 Bytes (4%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes.

Globale Variablen verwenden 196 Bytes (9%) des dynamischen Speichers, 1852 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.

avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00

avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x00

avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x00

avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x00

avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x00

avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x00

avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x00

avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x00

avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x00

avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00

Fehlgeschlagenes Hochladen: Hochladefehler: exit status 1

Weiter, wird mir auch nicht angezeigt bei welchem port er angeschlossen ist (ich musste also try and error versuchen)

Was ist das Problem und wie kann ich das am besten beheben?

Danke im vorraus für die Antworten!

Ps:

Das ist das Program:

void setup() {

 // put your setup code here, to run once:

}

void loop() {

 // put your main code here, to run repeatedly:

Serial.print("Hello World");

delay(100);

}

Also sehr einfach, einfach um ihn zu testen

Arduino, Programmiersprache, Arduino Uno, Arduino Nano, Arduino IDE

Destination IP von Port?

Moin, hab durch meine Langeweile nach neuen Projekten gesucht und bin darauf gestoßen ein Programm zu schreiben welches mir die Destination IP durch das scannen eines ports gibt. Hab es erst als mit einer TCP Verbindung versucht damit hat alles geklappt dann wollte ich es mit einer UDP Verbindung testen und natürlich musste ich dafür einen neuen Code schreiben allerdings klappt das ganze nicht so wie ich es mir vorstellt und komme nicht drauf wie ich es anders machen könnte. Ich hab das ganze an einem CS2 server versucht und hab mich mit einem Public server verbunden, in Wireshark wird mir das ganz normal angezeigt in meinem Programm wird mir leider trotzdem nichts angezeigt :/Keine Ahnung ob ich einen Denkfehler habe oder komplett falsch an die sache rangegangen bin. Gerne Vorschläge + Danke im Voraus :) Hier mein Code:

import socket

def check_port(port):
    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    
    try:
        host = socket.gethostbyname(socket.gethostname())

        sock.bind((host, port))
        print(f"Port {port} ist offen und bereit.")
        print(f"Checking {host}:{port}")

        while True:
            data, addr = sock.recvfrom(1024)
            print(f"Empfangene Daten von {addr[0]}:{addr[1]}: {data}")

    except OSError as e:
        print(f"OS Error{port}: {e}")
    finally:
        sock.close()

if __name__ == "__main__":
    port = 27015  
    check_port(port)
IP-Adresse, Netzwerktechnik, Port, Programmiersprache, Python, Python 3, UDP

C++ Code für LGS?

Ich möchte mit einen C++-Programm alle LGS lösen können (endlich, unendlich und keine Lösungen). Ich habe auch einen Code. Endlich viele und keine Lösungen kann er recht gut (bisher), aber unendlich viele Lösungen kann er nicht anzeigen lassen (soll dann auch t einführen, nicht einfach einen Wert einsetzen).

Wo liegt der Fehler?

#include <iostream>
#include <vector>
#include <cmath>

using namespace std;

// Funktion zur Berechnung des Determinanten einer Matrix
double determinant(vector<vector<double>>& matrix, int n) {
  double det = 0;

  if (n == 1) {
    return matrix[0][0];
  }

  if (n == 2) {
    return matrix[0][0] * matrix[1][1] - matrix[0][1] * matrix[1][0];
  }

  for (int i = 0; i < n; i++) {
    vector<vector<double>> subMatrix(n - 1, vector<double>(n - 1));

    for (int j = 1; j < n; j++) {
      for (int k = 0; k < n; k++) {
        if (k < i) {
          subMatrix[j - 1][k] = matrix[j][k];
        }
        else if (k > i) {
          subMatrix[j - 1][k - 1] = matrix[j][k];
        }
      }
    }

    det += pow(-1, i) * matrix[0][i] * determinant(subMatrix, n - 1);
  }

  return det;
}
 
// Funktion zur Durchführung der Gauss-Jordan-Elimination
void gaussJordan(vector<vector<double>>& matrix, vector<double>& constants) {
  int n = matrix.size();

  for (int i = 0; i < n; i++) {
    int maxIndex = i;

    for (int j = i + 1; j < n; j++) {
      if (abs(matrix[j][i]) > abs(matrix[maxIndex][i])) {
        maxIndex = j;
      }
    }

    if (maxIndex != i) {
      swap(matrix[maxIndex], matrix[i]);
      swap(constants[i], constants[maxIndex]); // Korrektur hier
    }

    double factor = matrix[i][i];

    for (int j = i; j < n; j++) {
      matrix[i][j] /= factor;
    }

    constants[i] /= factor;

    for (int j = 0; j < n; j++) {
      if (j != i) {
        double factor = matrix[j][i];

        for (int k = i; k < n; k++) {
          matrix[j][k] -= factor * matrix[i][k];
        }

        constants[j] -= factor * constants[i];
      }
    }
  }
}

// Funktion zur Überprüfung der Invertierbarkeit und zur Lösung des LGS
vector<double> solveLinearSystem(vector<vector<double>>& matrix, vector<double>& constants) {
  int n = matrix.size();
  double det = determinant(matrix, n);

  // Überprüfung auf unendlich viele Lösungen
  bool allZero = true;

  for (double constant : constants) {
    if (constant != 0) {
      allZero = false;
      break;
    }
  }

  if (det == 0) {
    if (allZero) {
      cout << "Das LGS hat unendlich viele Lösungen." << endl;
      return {}; // Leerer Vektor, da unendlich viele Lösungen existieren
    }
    else {
      cout << "Das LGS hat keine Lösung." << endl;
      return {}; // Leerer Vektor, da keine Lösung existiert
    }
  }

  // Anwendung der Gauss-Jordan-Elimination
  gaussJordan(matrix, constants);

  vector<double> solution(n);

  for (int i = 0; i < n; i++) {
    solution[i] = constants[i];
  }

  return solution;
}

int main() {
  vector<vector<double>> matrix = {
    { 1, -3,  5 },
    { 2, -5,  12 },
    { 3, -11,  11 }
  };
  vector<double> constants = { 2, 1, 12 };

  vector<double> solution = solveLinearSystem(matrix, constants);

  if (!solution.empty()) {
    cout << "Die Lösung des LGS ist: ";

    for (int i = 0; i < solution.size(); i++) {
      cout << "x" << i + 1 << " = " << solution[i] << ", ";
    }

    cout << endl;
  }
  else {
    cout << "Das LGS hat keine Lösung." << endl;
  }

  return 0;
}
Schule, Mathematik, programmieren, Cplusplus, Mathematiker, Programmiersprache, Algorithmus, lineare Gleichungssysteme

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

Java: Possible lossy conversion from double to int?

Guten Tag,

ich möchte ein Bild anzeigen, die Position dabei aber in einem double angeben. currentDrawing.x / y sind bereits double Werte. Weiß jemand, warum dieser Fehler aufkommt? Oder kann die Methode nur Integer annehmen? Vielen Dank schonmal!

public void startdraw(List world) {
        JPanel panel = new JPanel() {
            @Override
            protected void paintComponent(Graphics g) {
                super.paintComponent(g);
                BufferedImage buffer = new BufferedImage(frame.getWidth(), frame.getHeight(), BufferedImage.TYPE_INT_ARGB);
                Graphics bufferGraphics = buffer.getGraphics();
                world.toFirst();
                while (world.getContent() != null) {
                    Block currentDrawing = (Block)world.getContent();
                    if (currentDrawing != null) {
                        bufferGraphics.drawImage(currentDrawing.texture, currentDrawing.x*50.0, currentDrawing.y*50.0, (int)50, (int)50, null);
                    }
                    world.next();
                }
                g.drawImage(buffer, 0, 0, null);
            }
        };


        frame.add(panel);
        frame.setVisible(true);
    } 
Bild zum Beitrag
Fehler, Java, Code, Programmiersprache, Swing, double, Integer, Java Swing

Ab wann beginnt Full-Stack Entwicklung im Webbereich und wie sieht es mit dem Gehalt aus?

Hallo liebe Community,

kurze Einleitung:

Ich bin Junior Webentwickler seit zirka 1 Jahr bei einer (relativ) kleinen Firma. Wir arbeiten viel mit Freelancer zusammen.

Ich bin mit HTML / CSS / JS eingestiegen und programmiere hier jetzt hauptsächlich über Wordpress die Websiten und Plugins.

Dazu wird bekannterweise → php genutzt. Daher geht hier Jquery, PHP, JS, MySQL, Git/hub und das Wissen in vielen bewährten Plugins und derer Programmierung für erweitere Funktionen einher.

Daher mache ich Backend und Frontend Entwicklung gleichermaßen. Das kann ich auch schon relativ gut, ich musste hier mir alles selbst beibringen und hab hauptsächlich mit Udemy und unserer tollen AI ChatGPT Hilfe mir alles beigebracht.
Die Codereviews hab ich mir von der AI machen lassen, Fehler aufzeigen, den Code bewerten und Verbesserungsmöglichkeiten zeigen.

So bin ich nun der Meinung, ein relativ solides Wissen angeeignet zu haben.
Jetzt zu meinen Fragen:

Frage 1:
Ab wann dürfte ich mich Full-Stack-Entwickler nennen? Ich hab großen Respekt vor erfahrenen Full-Stack-Entwicklern, weil da eine Menge zugehört. Aber ist es schon Full-Stack, wenn man Frontend und Backend macht?

Frage 2:
Ich arbeite in MV und bekomme noch 2600 € brutto gezahlt. Es ist noch relativ niedrig, weil ich zu Anfang viel gelernt habe, die ersten Monate, um den Anforderungen gerecht zu werden. 2400 € in den ersten 6 Monaten und bis jetzt (12. Monat) 2600.

Was wäre so eine faire Preisspanne? Die Firma gibts bald seit 10 Jahren und wir sind kein Start-up mehr. Auch läuft es gerade gut und ich konnte alle Aufgaben bewältigen, die mir seither gestellt wurden. Wenn ich auch für manche länger gebraucht habe (aber dafür bin ich ja auch ein Junior). Mich würde interessieren, wo es fair wäre? Ich möchte bald in die Gehaltsverhandlung gehen und wäre sehr dankbar über Ratschläge und eure Meinungen.

Liebe Grüße

Beruf, HTML, Webseite, programmieren, CSS, JavaScript, HTML5, Entwicklung, PHP, Programmiersprache, Webdesign, Webentwicklung, Backend, Frontend

Welche Programmiersprache für Backend (Web)?

An alle Programmierer,

welche Programmiersprache verwendet ihr im Backend und welche würdet ihr empfehlen?

Ich weis das ist eine sehr diskutierte Frage, aber was würdet ihr empfehlen, um in Deutschland einen Job zu bekommen?

Wenn man mal auf YouTube schaut, sagen die meisten Java - nein, C# (.Net) - veraltet (sind aber auch amerikanische YouTuber, da läuft es gefühlt anders).

Die Empfehlung ist: nimm Python (Django oder Flask), Ruby, GO, etc. (eben die neuen Sprachen).

Vergleicht man das allerdings mit den aktuellen Job Angeboten z.B. Stepstone dann gibt es aktuell 14 Jobangebote in Deutschland für Django, also für mich ein klares nein diese Sprache weiter zu lernen (genau so für alle anderen Sprachen)...

Gefordert werden Java oder C# (oder auch PHP, aber die Firmen setzten dann meistens auf WordPress), das sind allerdings auch die Sprachen, die keiner aktuell empfiehlt, daher bin ich da im Zwiespalt.

Aktuell verwende ich im Backend Django mit AWS, Ubuntu 22.04, NGINX und Gunicorn. Allerdings verwendet keiner in Deutschland Django, daher mal die Frage: Was macht denn eigentlich wirklich Sinn zu lernen, was auch viele Unternehmen verwenden?

Denn laut den Jobangeboten ist Java an erster Stelle und dann kommt C# an zweiter Stelle, für alle weiteren gibt es dann kaum Angebote.

Mit Frontend Frameworks ist das ja ein ähnliches Problem, es gibt gefühlt wöchentlich neuen Frameworks, aber bei Bewerbungen werden Angular (die meisten Job Angebote), dann React.js, dann Vue.js gefordert. Über allen anderen Frameworks brauchen wir nicht reden, da gibt es so gut wie keine Angebote.

Java 53%
C# 27%
PHP 20%
Python 0%
Node.js 0%
Weitere 0%
Webseite, Java, JavaScript, Programmiersprache, Python, Webentwicklung, Backend-Developer

Meistgelesene Beiträge zum Thema Programmiersprache