Menü×

ChatGPT & AI

  • Mod/RDW
    #301 BigBANG 23 Apr. 2023, 00:41

    Teste es doch aus mit ChatGPT-4. Kanns am Handy nicht so leicht nutzen.

  • #302 pump3 23 Apr. 2023, 00:43

    Zitat von: Reichskatzler

    Wobei mein Taschenrechner nicht zensiert wird.
    Tatsächlich kann man mit dem Taschenrechner lustige Sachen machen.
    Z.b. wenn man die Anzahl Doppelzentner des Gewichtes der fetten Ricarda (3) mit der Anzahl Buchstaben in L G B T Q (5) mit der Anzahl sexueller Orientierungen (4756621) multipliziert, dann den Taschenrechner umdreht, dann erhält man ein Toleranzwort.

    Zitat von: BigBANG
    Das könnte nicht weiter von der Wahrheit entfernt sein.
    ChatGPT ist kein Chatbot, sondern ein neuronales Netz, dem das Wissen des Internets in Textform gefüttert wurde. Die Art der Textgenerierung basiert darauf das nächstwahrscheinlichste Wort zu generieren. Im Prinzip eine Art Autovervollständigung.
    Weshalb diese Autovervollständigung in unterschiedlichsten Bereichen so intelligent ist, wissen selbst nichtmal ihre Erschaffer.

    Das neuronale Netz hat Verbindungen geschaffen, die wir noch nicht verstehen können. Jeder, der behauptet, er könne diese AI eindeutig bewerten, ist ahngungslos. Aktuell kann das niemand.

    Dazu kommt nun, dass man dieses neuronale Netz nicht nur für Wortgenerierung verwenden kann. Es gibt sogenannte Transformer, die es ermöglichen, Töne, Bilder, etc. in Tokens zu wandeln und diese dann wie Sprache ebenso zu autovervollständigen. Dabei kommen dann genauso erstaunlich richtige Ergebnisse heraus. Mit anderen Worten: Es handelt sich um eine technische Revolution, die alles auf den Kopf stellt.
    Ja, ok. Also Taschenrechner mit Wortvervollständigung. Für Bilder.
    Oh, wow.
    Zitat von: Hexley
    Kann mir ChatGPT sagen, wie ich folgenden Code ändern muss:
    C++:
    #include "wrapper.h"
    
    // #define BOOST_PYTHON_STATIC_LIB
    #include <boost/python.hpp>
    #include <boost/python/suite/indexing/vector_indexing_suite.hpp>
    
    namespace py = boost::python;
    
    class WrapperPython : public Wrapper
    {
    public:
        void wrapSetCallback(py::object fct)
        {
    
            Wrapper::setCallback(
                [fct](const std::vector<std::pair<std::string, int>>& items)
                {
                    PyGILState_STATE gstate = PyGILState_Ensure();
                    fct(items);
                    PyGILState_Release(gstate);
                });
        }
    };
    
    BOOST_PYTHON_MODULE(pycppcallable)
    {
        py::class_<std::vector<std::pair<std::string, int>>>("VectorPair")
            .def(py::vector_indexing_suite<std::vector<std::pair<std::string, int>>>());
    
        py::class_<WrapperPython>("Wrapper", py::init<>())
            .def("append_item", &WrapperPython::appendItem)
            .def("set_callback", &WrapperPython::wrapSetCallback)
            .def("use_callback", &WrapperPython::useCallback);
    }

    Damit ich das Modul pycallable in folgendem Python Code nutzen kann?
    Python:
    #!/usr/bin/env python3
    import pycppcallable
    
    if __name__ == '__main__':
        t = pycppcallable.Wrapper()
    
        def f(items):
            for k,v in items:
                print(f'String: {k} Id: {v}')
     
        t.append_item('Eins', 1)
        t.append_item('Zwei', 2)
    
        t.set_callback(f)
        t.use_callback()

    Derzeit kriege ich nur diese Fehlermeldung:
    Lösung: Haskell verwenden

  • Mod/RDW
    #303 BigBANG 23 Apr. 2023, 00:45

    Zitat von: Hexley

    Kann mir ChatGPT sagen, wie ich folgenden Code ändern muss:
    C++:
    #include "wrapper.h"
    
    // #define BOOST_PYTHON_STATIC_LIB
    #include <boost/python.hpp>
    #include <boost/python/suite/indexing/vector_indexing_suite.hpp>
    
    namespace py = boost::python;
    
    class WrapperPython : public Wrapper
    {
    public:
        void wrapSetCallback(py::object fct)
        {
    
            Wrapper::setCallback(
                [fct](const std::vector<std::pair<std::string, int>>& items)
                {
                    PyGILState_STATE gstate = PyGILState_Ensure();
                    fct(items);
                    PyGILState_Release(gstate);
                });
        }
    };
    
    BOOST_PYTHON_MODULE(pycppcallable)
    {
        py::class_<std::vector<std::pair<std::string, int>>>("VectorPair")
            .def(py::vector_indexing_suite<std::vector<std::pair<std::string, int>>>());
    
        py::class_<WrapperPython>("Wrapper", py::init<>())
            .def("append_item", &WrapperPython::appendItem)
            .def("set_callback", &WrapperPython::wrapSetCallback)
            .def("use_callback", &WrapperPython::useCallback);
    }

    Damit ich das Modul pycallable in folgendem Python Code nutzen kann?
    Python:
    #!/usr/bin/env python3
    import pycppcallable
    
    if __name__ == '__main__':
        t = pycppcallable.Wrapper()
    
        def f(items):
            for k,v in items:
                print(f'String: {k} Id: {v}')
     
        t.append_item('Eins', 1)
        t.append_item('Zwei', 2)
    
        t.set_callback(f)
        t.use_callback()

    Derzeit kriege ich nur diese Fehlermeldung:
    It appears that the Python binding for std::pair<std::string, int> is missing in your code, and that's why you are getting the TypeError. You need to create a Python class for this C++ type to allow Boost.Python to convert it correctly.

    Modify the BOOST_PYTHON_MODULE block in your C++ code to include the binding for std::pair<std::string, int>:


    BOOST_PYTHON_MODULE(pycppcallable)
    {
    py::class_<std::pair<std::string, int>>("Pair")
    .def_readwrite("first", &std::pair<std::string, int>::first)
    .def_readwrite("second", &std::pair<std::string, int>::second);

    py::class_<std::vector<std::pair<std::string, int>>>("VectorPair")
    .def(py::vector_indexing_suite<std::vector<std::pair<std::string, int>>>());

    py::class_<WrapperPython>("Wrapper", py::init<>())
    .def("append_item", &WrapperPython::appendItem)
    .def("set_callback", &WrapperPython::wrapSetCallback)
    .def("use_callback", &WrapperPython::useCallback);
    }

    Now, the std::pair<std::string, int> C++ type has a corresponding Python class named Pair. This should fix the TypeError you're encountering. After making this change, recompile the C++ code into a shared library, and try running your Python script again.

  • #304 Karl Klammer 23 Apr. 2023, 00:46

    Überzeugt bin ich wenn wir bald Mikrochips im Hirn haben und jeder Gedanke als Befehl an die KI, die mittlerweile alles kontrolliert, weiß und kann, entsandt werden kann. Sozusagen eine Aleggser 15.10 die nicht nur google vorliest und Musik abspielt sondern wirklich alles digitale bewirken kann.

  • #305 Karl Klammer 23 Apr. 2023, 00:51

    1682203749401527.jpg

  • Mod/RDW
    #306 BigBANG 23 Apr. 2023, 00:53

    Zitat von: Giovanni

    Überzeugt bin ich wenn wir bald Mikrochips im Hirn haben und jeder Gedanke als Befehl an die KI, die mittlerweile alles kontrolliert, weiß und kann, entsandt werden kann. Sozusagen eine Aleggser 15.10 die nicht nur google vorliest und Musik abspielt sondern wirklich alles digitale bewirken kann.
    Schau mal bei 19:27:

  • Mod/RDW
    #307 Sylvester 23 Apr. 2023, 01:03

    Zitat von: BigBANG

    py::class_<std::pair<std::string, int>>("Pair")
    .def_readwrite("first", &std::pair<std::string, int>::first)
    .def_readwrite("second", &std::pair<std::string, int>::second);
    Das hätte ich auch ohne Bing geschafft. Allerdings wollte ich schon ein Python-Tuple. Ich habe es in Edge probiert und er hatte mir folgendes vorgeschlagen:
    Spoiler: Boost.Python Vorschlag von Bing
    Code:
    #include "wrapper.h"
    
    // #define BOOST_PYTHON_STATIC_LIB
    #include <boost/python.hpp>
    #include <boost/python/suite/indexing/vector_indexing_suite.hpp>
    
    namespace py = boost::python;
    
    // Registrieren Sie die Klasse std::pair<std::string, int>
    struct StringIntPairToPythonConverter
    {
        static PyObject* convert(const std::pair<std::string, int>& pair)
        {
            return py::incref(py::make_tuple(pair.first, pair.second).ptr());
        }
    };
    
    struct StringIntPairFromPythonConverter
    {
        StringIntPairFromPythonConverter()
        {
            py::converter::registry::push_back(&convertible, &construct, py::type_id<std::pair<std::string, int>>());
        }
    
        static void* convertible(PyObject* obj_ptr)
        {
            if (!PyTuple_CheckExact(obj_ptr))
                return 0;
            if (PyTuple_Size(obj_ptr) != 2)
                return 0;
            return obj_ptr;
        }
    
        static void construct(PyObject* obj_ptr, py::converter::rvalue_from_python_stage1_data* data)
        {
            py::tuple tuple(py::borrowed(obj_ptr));
            std::string first = py::extract<std::string>(tuple[0]);
            int second = py::extract<int>(tuple[1]);
            void* storage = ((py::converter::rvalue_from_python_storage<std::pair<std::string, int>>*)data)->storage.bytes;
            new (storage) std::pair<std::string, int>(first, second);
            data->convertible = storage;
        }
    };
    
    class WrapperPython : public Wrapper
    {
    public:
        void wrapSetCallback(py::object fct)
        {
            Wrapper::setCallback(
                [fct](const std::vector<std::pair<std::string, int>>& items)
                {
                    PyGILState_STATE gstate = PyGILState_Ensure();
                    fct(items);
                    PyGILState_Release(gstate);
                });
        }
    };
    
    BOOST_PYTHON_MODULE(pycppcallable)
    {
        // Registrieren Sie die Konverter
        py::to_python_converter<std::pair<std::string, int>, StringIntPairToPythonConverter>();
        StringIntPairFromPythonConverter();
    
        py::class_<std::vector<std::pair<std::string, int>>>("VectorPair")
            .def(py::vector_indexing_suite<std::vector<std::pair<std::string, int>>>());
    
        py::class_<WrapperPython>("Wrapper", py::init<>())
            .def("append_item", &WrapperPython::appendItem)
            .def("set_callback", &WrapperPython::wrapSetCallback)
            .def("use_callback", &WrapperPython::useCallback);
    }
    Es funktioniert leider noch nicht, und so ein ähnliches Beispiel habe ich bereits auf Stackoverflow gefunden:

    Es ist witzig dass dein Lösungsvorschlag auch eine Antwort auf diesselbe Stackoverflowfrage war wie mein Lösungsvorschlag.

  • #308 Karl Klammer 23 Apr. 2023, 01:08

    Zitat von: BigBANG

    Schau mal bei 19:27:
    Die gezeigten Beispiele der verarbeiteten fMRIs entsprechen in der Übereinstimmung zum Ausgangsmaterial in etwa dem, was ich mir visuell vorstelle und dem, was dall-e anhand einer textlichen Beschreibung dessen ausspuckt.

  • #309 GеIöschtеs Mitglied 40210 23 Apr. 2023, 01:29

    Zitat von: Hexley

    Das hätte ich auch ohne Bing geschafft. Allerdings wollte ich schon ein Python-Tuple. Ich habe es in Edge probiert und er hatte mir folgendes vorgeschlagen:
    Spoiler: Boost.Python Vorschlag von Bing
    Code:
    #include "wrapper.h"
    
    // #define BOOST_PYTHON_STATIC_LIB
    #include <boost/python.hpp>
    #include <boost/python/suite/indexing/vector_indexing_suite.hpp>
    
    namespace py = boost::python;
    
    // Registrieren Sie die Klasse std::pair<std::string, int>
    struct StringIntPairToPythonConverter
    {
        static PyObject* convert(const std::pair<std::string, int>& pair)
        {
            return py::incref(py::make_tuple(pair.first, pair.second).ptr());
        }
    };
    
    struct StringIntPairFromPythonConverter
    {
        StringIntPairFromPythonConverter()
        {
            py::converter::registry::push_back(&convertible, &construct, py::type_id<std::pair<std::string, int>>());
        }
    
        static void* convertible(PyObject* obj_ptr)
        {
            if (!PyTuple_CheckExact(obj_ptr))
                return 0;
            if (PyTuple_Size(obj_ptr) != 2)
                return 0;
            return obj_ptr;
        }
    
        static void construct(PyObject* obj_ptr, py::converter::rvalue_from_python_stage1_data* data)
        {
            py::tuple tuple(py::borrowed(obj_ptr));
            std::string first = py::extract<std::string>(tuple[0]);
            int second = py::extract<int>(tuple[1]);
            void* storage = ((py::converter::rvalue_from_python_storage<std::pair<std::string, int>>*)data)->storage.bytes;
            new (storage) std::pair<std::string, int>(first, second);
            data->convertible = storage;
        }
    };
    
    class WrapperPython : public Wrapper
    {
    public:
        void wrapSetCallback(py::object fct)
        {
            Wrapper::setCallback(
                [fct](const std::vector<std::pair<std::string, int>>& items)
                {
                    PyGILState_STATE gstate = PyGILState_Ensure();
                    fct(items);
                    PyGILState_Release(gstate);
                });
        }
    };
    
    BOOST_PYTHON_MODULE(pycppcallable)
    {
        // Registrieren Sie die Konverter
        py::to_python_converter<std::pair<std::string, int>, StringIntPairToPythonConverter>();
        StringIntPairFromPythonConverter();
    
        py::class_<std::vector<std::pair<std::string, int>>>("VectorPair")
            .def(py::vector_indexing_suite<std::vector<std::pair<std::string, int>>>());
    
        py::class_<WrapperPython>("Wrapper", py::init<>())
            .def("append_item", &WrapperPython::appendItem)
            .def("set_callback", &WrapperPython::wrapSetCallback)
            .def("use_callback", &WrapperPython::useCallback);
    }
    Es funktioniert leider noch nicht, und so ein ähnliches Beispiel habe ich bereits auf Stackoverflow gefunden:

    Es ist witzig dass dein Lösungsvorschlag auch eine Antwort auf diesselbe Stackoverflowfrage war wie mein Lösungsvorschlag.
    Meine Erfahrung bisher: ChatGPT liegt so bei 30% der Fälle schon initial richtig, 30% wenn man ein paar Mal hin-und herschreibt/ausprobiert. Beim Rest kommt er zwangsläufig in logische Schleifen und man muss schauen ob man selbst rumschreiben kann. Vermutlich ist diese Rate bei einfachen Problemen günstiger und bei schwierigeren niedriger. Dennoch ganz nützliches Tool was dir per minimal effort Kot schreibt.

  • #310 MächtigerMauzer 23 Apr. 2023, 18:52

    Seien dumme Fakelache. Neidreschen.

  • Mod/RDW
    #311 Sylvester 24 Apr. 2023, 16:51

    Ich habe ChatGPT gerade gefragt, wie ich NMEA Strings aus einem langen String mittels Regex rausfische, und er hat mir ein Beispiel geliefert welches nicht mal funktioniert.

    Python:
    import re
    
    regex = r'\\$GP[A-Z]{3},.*?\\*[A-F0-9]{2}'
    message = 'Some text before $GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47 some text in between $GPGLL,4916.45,N,12311.12,W,225444,A,*1D some text after'
    
    nmea_sentences = re.findall(regex, message)
    
    for sentence in nmea_sentences:
        print(sentence)
    Langsam frage ich mich wirklich, ob das nicht einfach alles überbewertet wird.
    Spoiler: ChatGPT Antwort
    JYT84ST.png

  • Mod/RDW
    #312 Sylvester 24 Apr. 2023, 16:58

    Ok, wenn man Bing drauf anspricht, dass das Beispiel falsch ist, korrigiert er es:
    das ist der richtige Regex: regex = r'\$GP[A-Z]{3},.*?\*[A-F0-9]{2}'

    Immerhin:

    Spoiler: ChatGPT Antwort
    u9xCwJL.png

    Dieser Beitrag wurde von Sylvester am 24.04.2023 17:04:27 bearbeitet.
  • #313 Pedder 24 Apr. 2023, 17:10

    Es ist fast so, als scheißt das Teil halt einfach nur die plausibelsten nächsten Wörter raus und kann daher manchmal verdammt gute Antworten geben und sich manchmal einfach nur vollkommenen Blödsinn ausdenken. Ich nehme es meistens als erste Wahl und wenn nur Murks kommt nehme ich halt Google/Stackoverflow. Bei letzterem bekommt man aber auch oft genug vollkommen unpassenden oder nutzlosen Rotz.

  • #314 Karl Klammer 24 Apr. 2023, 17:17

    chatgpt nutzt man am besten, wenn man die tatzächliche Antwort eh schon kennt, nur um ihmihres mitzuteilen, wie dumm es ist.

  • Mod/RDW
    #315 Sylvester 24 Apr. 2023, 17:41

    Zitat von: Giovanni

    chatgpt nutzt man am besten, wenn man die tatzächliche Antwort eh schon kennt, nur um ihmihres mitzuteilen, wie dumm es ist.

    Wenn du ChatGPT richtig einsetzen würdest, könntest du noch was dazulernen:

    Spoiler: ChatGPT Antwort
    WEFGHdd.png

  • Mod/RDW
    #316 BigBANG 24 Apr. 2023, 18:32

    Wer keine Pro-Version hat, um ChatGPT-4 nutzen zu können, der sollte lieber nur die Bing AI nutzen.
    Das kostenlose Modell würde ich selbst nicht mehr nutzen.

  • Mod/RDW
    #317 Centauri 26 Apr. 2023, 15:27




    Mozart xD

  • #318 Karl Klammer 26 Apr. 2023, 16:14

    Borat :D

  • #319 Gelöschtes Mitglied 69 26 Apr. 2023, 18:59

    gaaaaauuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuß ich schieb dir nen spargel in den arrrrrrrrrrrrsch

  • #320 M3D!C 28 Apr. 2023, 10:35

    Zitat von: Centauri




    Mozart xD

    Wo Malta?
    ChatGBT soll ma sei Euroba uf de Kedde griechn. Oder der Düb hats eifach abgschnitten.

LSMaxx