Code – die besten Beiträge

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 mit C++ Textdateien in einem Container speichern?

Ich habe ein Problem mit meinem Programm. Ich möchte eine Textdatei in meinem selbst definierten Container speichern, doch Ich weiß nicht, wo das Problem ist.

#include <iostream>
#include <filesystem>
#include <vector>
#include <string>
#include <fstream>
#include <algorithm>

using namespace std;

template <typename Template>
class Container {
  private:
    Template* Eigenschaft1;
    size_t Größe;
    size_t Speichergröße;
  public:
    Container(size_t ContainerGröße = 10000) : Größe(0), Speichergröße(ContainerGröße) {
      Eigenschaft1 = new Template[Speichergröße];
    }

    void Speichern(const Template& Wert) {
      for (int i = 0; i < Größe; i++) {
        Eigenschaft1[Größe++] = Wert;
      }
    }
};

class Personal {
  private:
    string Name;
    string Position;
    int Alter;
    double Gehalt;
  public:
    Personal();

    void Speicherung(string Name, string Position, int Alter, double Gehalt, Container<ofstream>& Container);

    void Ausgabe();

    void Hinzufügen(Container<ofstream>& Container);
};

Personal::Personal() {
  Name = Name;
  Position = Position;
  Alter = Alter;
  Gehalt = Gehalt;
}

void Personal::Speicherung(string Name, string Position, int Alter, double Gehalt, Container<ofstream>& Container) {
  string Entscheidung;
  ofstream Datei1("Datei.csv");
  Datei1 << "Name: " << Name << endl;
  Datei1 << "Position" << Position << endl;
  Datei1 << "Alter: " << Alter << endl;
  Datei1 << "Gehalt: " << Gehalt << endl;

  cout << "M\u00F6chten sie die Person speichern: ";

  if (Entscheidung == "Ja") {
    Container.Speichern(Datei1);
  }
  else if (Entscheidung == "Nein") {
  }
}

void Personal::Ausgabe() {
  ifstream Datei1("Datei.csv");
  getline(Datei1, Name);
  Datei1 >> Position;
  Datei1 >> Alter;
  Datei1 >> Gehalt;
  cout << "Name: " << Name << endl;
  cout << "Alter: " << Alter << endl;
  cout << "Beruf: " << Position << endl;
  cout << "Gehalt: " << Gehalt << endl;
}

void Personal::Hinzufügen(Container<ofstream>& Container) {
  Personal P;
  cout << "Bitte geben side den Namen ein: ";
  cin >> P.Name;
  cout << "Bitte geben sie den Beruf an: ";
  cin >> P.Position;
  cout << "Bitte geben sie das Alter der Person an: ";
  cin >> P.Alter;
  cout << "Bitte geben sie das Gehalt der Person an: ";
  cin >> P.Gehalt;
  Speicherung(P.Name, P.Position, P.Alter, P.Gehalt, Container);
}

template <typename T>
int main() {
  string Passwort1 { "Erfolg1234" };
  string Passwort2;
  Container<ofstream> Container;
  Personal P;
  int Entscheidung;
  cout << "Geben sie das Passwort ein: ";
  cin >> Passwort2;

  if (Passwort2 == Passwort1) {
    cout << "Wollen sie eine neue Position hinzufügen (1)" << endl;
    cout << "Wollen sie auf eine Position zugreifen (2)" << endl;
    cin >> Entscheidung;

    if (Entscheidung == 1) {
      P.Hinzufügen(Container);
    }
    else if (Entscheidung == 2) {
      P.Ausgabe();
    }
  }
  else {
    cout << "Falsches Passwort" << endl;
  }
}
Cplusplus, Code, CPP, Programmiersprache, Visual Studio

Meistgelesene Beiträge zum Thema Code