Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo zusammen,

 

für ein Hobbyprojekt versuchen ich und ein paar Freunde, eine Zeichensoftware zu bauen, die automatisiert Zeichnungen anfertig. Der Use Case ist noch nicht ganz konkretisiert, aber es es könnte beispielsweise eine Software sein, die Maschinenbauingenieure dabei unterstützt 2-dimensionale Konstruktionspläne automatisiert zu erstellen. Letztlich bekommt so eine Software eine Menge an Ausgangsdaten und eine Menge an fertigen Konstruktionsplänen, die auf Basis, der Ausgangsdaten erstellt wurden. So soll die Software lernen nach welchen Regeln sie die Ergebnisse erstellt. Das Ganze ist dann sicherlich KI-basiert. Die Frage ist, welche Möglichkeiten gibt es eine solche Software zu bauen ohne dabei alles von grundauf neu zu coden(Bin selber SAP-Softwareentwickler und verstehe grundlegende Konzepte der Softwarentwicklung). Unsere Idee ist es, dass wir versuchen eins der existierenden Sprachmodelle, wie beispielsweise chatgpt DSGVO-konform zu trainieren für unseren Use Case. Es gibt ja beispielsweise die Möglichkeit auf europäischen Microsoft Servern das GPT-Sprachmodell zu nutzen und zu trainieren. Hat jemand vielleicht weitere Empfehlungen/Ideen, welche Basiskomponenten es für unseren Use Case schon gibt? (Zeichenmodule etc.) Auch über Anregungen oder Tipps zur Umsetzung,  freuen wir uns. Bezüglich des Use Cases bitte beachten, dass uns bewusst ist, dass der Use Case eventuell nicht umsetzbar ist. Uns geht es mehr darum zu verstehen, wie man bereits existierenden Modelle für einen Use Case trainieren und anpassen kann. 

 

VG,

Daniel

 

vor 1 Stunde schrieb daniel861:

Hat jemand vielleicht weitere Empfehlungen/Ideen, welche Basiskomponenten es für unseren Use Case schon gibt? (Zeichenmodule etc.)

Dies sind die Abhängigkeiten von Freecad.

 * dependency graph for media-gfx/freecad-1.0.0
 `--  media-gfx/freecad-1.0.0  amd64
   `--  dev-lang/python-3.10.15_p2  (dev-lang/python) amd64
   `--  dev-lang/python-3.11.10_p1  (dev-lang/python) amd64
   `--  dev-lang/python-3.12.7_p1  (dev-lang/python) amd64
   `--  dev-cpp/gtest-1.14.0-r1  (dev-cpp/gtest) amd64
   `--  dev-cpp/yaml-cpp-0.8.0  (dev-cpp/yaml-cpp) amd64
   `--  dev-libs/OpenNI2-2.2_beta2-r1  (dev-libs/OpenNI2) amd64  [opengl(+)]
   `--  dev-libs/boost-1.85.0-r1  (dev-libs/boost) amd64
   `--  dev-libs/libfmt-9.1.0-r2  (dev-libs/libfmt) amd64
   `--  dev-libs/libspnav-1.1  (dev-libs/libspnav) amd64  [X]
   `--  dev-libs/xerces-c-3.2.5  (dev-libs/xerces-c) amd64  [icu]
   `--  dev-ruby/asciidoctor-2.0.23  (dev-ruby/asciidoctor) amd64
   `--  dev-qt/qtconcurrent-5.15.14  (dev-qt/qtconcurrent) amd64
   `--  dev-qt/qtcore-5.15.14  (dev-qt/qtcore) amd64
   `--  dev-qt/qtnetwork-5.15.14-r1  (dev-qt/qtnetwork) amd64
   `--  dev-qt/qtxml-5.15.14  (dev-qt/qtxml) amd64
   `--  dev-qt/qtxmlpatterns-5.15.14  (dev-qt/qtxmlpatterns) amd64
   `--  dev-qt/qtbase-6.7.3-r2  (dev-qt/qtbase) amd64  [concurrent network xml]
   `--  media-libs/freetype-2.13.2  (media-libs/freetype) amd64
   `--  media-libs/qhull-2020.2-r3  (media-libs/qhull) amd64
   `--  sci-libs/hdf5-1.14.3-r1  (sci-libs/hdf5) amd64  [fortran zlib]
   `--  sci-libs/med-4.1.1-r3  (>=sci-libs/med-4.0.0-r1) amd64
   `--  sci-libs/opencascade-7.8.1  (sci-libs/opencascade) amd64  [json vtk]
   `--  sci-libs/orocos_kdl-1.5.1  (sci-libs/orocos_kdl) amd64
   `--  sys-libs/zlib-1.3.1-r1  (sys-libs/zlib) amd64
   `--  virtual/libusb-1-r2  (virtual/libusb) amd64
   `--  dev-libs/openssl-3.3.2  (dev-libs/openssl) amd64
   `--  net-misc/curl-8.10.1-r1  (net-misc/curl) amd64
   `--  sci-libs/vtk-9.3.0-r3  (sci-libs/vtk) amd64  [qt5 rendering]
   `--  media-libs/coin-4.0.3  (>=media-libs/coin-4.0.0) amd64
   `--  virtual/glu-9.0-r2  (virtual/glu) amd64
   `--  virtual/opengl-7.0-r2  (virtual/opengl) amd64
   `--  dev-qt/designer-5.15.14  (dev-qt/designer) amd64
   `--  dev-qt/qtgui-5.15.14  (dev-qt/qtgui) amd64
   `--  dev-qt/qtopengl-5.15.14  (dev-qt/qtopengl) amd64
   `--  dev-qt/qtprintsupport-5.15.14  (dev-qt/qtprintsupport) amd64
   `--  dev-qt/qtsvg-5.15.14  (dev-qt/qtsvg) amd64
   `--  dev-qt/qtwidgets-5.15.14  (dev-qt/qtwidgets) amd64
   `--  dev-qt/qtx11extras-5.15.14  (dev-qt/qtx11extras) amd64
   `--  sci-libs/pcl-1.14.1  (sci-libs/pcl) amd64  [qt5]
   `--  dev-python/matplotlib-3.9.2  (dev-python/matplotlib) amd64  [python_targets_python3_10(-)]
   `--  dev-python/pivy-0.6.8  (>=dev-python/pivy-0.6.5) amd64  [python_targets_python3_10(-)]
   `--  dev-python/pyside2-5.15.14  (dev-python/pyside2) M[package.mask]  [gui svg webchannel python_targets_python3_10(-)]
   `--  dev-python/shiboken2-5.15.14  (dev-python/shiboken2) M[package.mask]  [python_targets_python3_10(-)]
   `--  dev-qt/qttools-6.7.3  (dev-qt/qttools) amd64  [designer]
   `--  dev-qt/qt5compat-6.7.3  (dev-qt/qt5compat) amd64
   `--  dev-qt/qtsvg-6.7.3  (dev-qt/qtsvg) amd64
   `--  dev-python/pyside6-6.7.3  (dev-python/pyside6) amd64  [gui svg webchannel python_targets_python3_10(-)]
   `--  dev-python/shiboken6-6.7.3  (dev-python/shiboken6) amd64  [python_targets_python3_10(-)]
   `--  media-gfx/netgen-6.2.2302  (media-gfx/netgen) amd64  [opencascade]
   `--  media-gfx/openscad-2021.01-r5  (media-gfx/openscad) amd64
   `--  dev-python/numpy-2.1.3  (dev-python/numpy) amd64  [python_targets_python3_10(-)]
   `--  dev-python/pybind11-2.13.6  (dev-python/pybind11) amd64  [python_targets_python3_10(-)]
   `--  dev-python/gitpython-3.1.43  (dev-python/gitpython) amd64  [python_targets_python3_10(-)]
   `--  dev-python/ply-3.11-r2  (dev-python/ply) amd64  [python_targets_python3_10(-)]
   `--  dev-cpp/eigen-3.4.0-r1  (>=dev-cpp/eigen-3.3.1) amd64
   `--  dev-cpp/ms-gsl-4.0.0  (dev-cpp/ms-gsl) amd64
   `--  dev-python/pyyaml-6.0.2  (dev-python/pyyaml) amd64  [python_targets_python3_10(-)]
   `--  dev-qt/qttest-5.15.14  (dev-qt/qttest) amd64
   `--  app-text/dos2unix-7.5.2  (app-text/dos2unix) amd64
   `--  dev-lang/swig-4.2.1  (dev-lang/swig) amd64
   `--  app-alternatives/ninja-1  (app-alternatives/ninja) amd64
   `--  dev-build/cmake-3.30.5  (>=dev-build/cmake-3.20.5) amd64
   `--  dev-util/desktop-file-utils-0.27-r1  (dev-util/desktop-file-utils) amd64
   `--  x11-misc/shared-mime-info-2.4-r1  (x11-misc/shared-mime-info) amd64

Ich würde mir zunächst Open Cascade anschauen. Dies ist ein sogenannter CAD Kernel. Diese Kernels kann man nutzen um CAD Software zu bauen. 

Man sollte hierbei auch bedenken das alleine bei Freecad hunderte an Entwicklern über Jahre an der Software gearbeitet haben. Überlegt euch, welche Ziele ihr erreichen könnt. Wenn eure Ziele zu hoch sind, werden eure Ideen im Sande verlaufen.
Ich würde wahrscheinlich erst mal versuchen ohne GUI eine art Durchstoß zu schaffen, um zu sehen, ob eure Ideen überhaupt tragfähig sind. Überlegt euch auch, für wen ihr das machen wollt. Die Zielgruppe muss ja das Produkt am Ende des Tages annehmen.

 

  • Autor

Danke für die Rückmeldung. Letztlich ist genau das unser Ziel zu versuchen erstmal ohne das Ganze drumherum, wie GUIs etc. ein Stück Software zu haben, dass aus dem Input einen Output generiert. Ziel ist es halt möglichst wenig selbst zu coden. Deshalb war die Ausgangsidee ein Sprachmodell zu nutzen, das automatisch zeichnet. Hat jemand damit Erfahrung? Gibt es eventuell ein chatgpt Zeichenmodul?

Ich hab die Befürchtung, dass es so nicht funktionieren wird, was ihr da vorhabt. So funktionieren Bildgeneratoren einfach nicht. Sie basieren auf Zufall und Wahrscheinlichkeitsberechnungen und nicht auf exakte angaben. Das Ergebnis ist nicht deterministisch und schon gar nicht der Norm entsprechend. Darum haben Bildgeneratoren z.B. ein Problem mit Texten. Sie können Texte einfach nicht richtig darstellen, obwohl es genug Trainingsmaterial gibt, das man auch leicht selbst erstellen kann. Ihr werdet es also nicht hinbekommen, mit einem Prompt exakt das gewünschte Ergebnis zu bekommen, was meiner Meinung sowieso total unmöglich ist. Man sieht es ja an der Softwareentwicklung. Die klare Beschreibung der Anforderung ist seit der Geburtsstunde der Softwareentwicklung ein riesiges Problem.

Auch ist ein Bildgenerator nicht in der Lage, Vektorgrafiken zu erzeugen, sondern ausschließlich Rastergrafiken aber mit Rastergrafiken kommt man nicht weit, weil Konstruktionszeichnungen auf auf DIN A0 gedruckt werden und da muss die Zeichnung weiterhin scharf bleiben, was nur mit Vektorgrafiken möglich ist.

  • Autor
vor 19 Stunden schrieb Whiz-zarD:

Ich hab die Befürchtung, dass es so nicht funktionieren wird, was ihr da vorhabt. So funktionieren Bildgeneratoren einfach nicht. Sie basieren auf Zufall und Wahrscheinlichkeitsberechnungen und nicht auf exakte angaben. Das Ergebnis ist nicht deterministisch und schon gar nicht der Norm entsprechend. Darum haben Bildgeneratoren z.B. ein Problem mit Texten. Sie können Texte einfach nicht richtig darstellen, obwohl es genug Trainingsmaterial gibt, das man auch leicht selbst erstellen kann. Ihr werdet es also nicht hinbekommen, mit einem Prompt exakt das gewünschte Ergebnis zu bekommen, was meiner Meinung sowieso total unmöglich ist. Man sieht es ja an der Softwareentwicklung. Die klare Beschreibung der Anforderung ist seit der Geburtsstunde der Softwareentwicklung ein riesiges Problem.

Auch ist ein Bildgenerator nicht in der Lage, Vektorgrafiken zu erzeugen, sondern ausschließlich Rastergrafiken aber mit Rastergrafiken kommt man nicht weit, weil Konstruktionszeichnungen auf auf DIN A0 gedruckt werden und da muss die Zeichnung weiterhin scharf bleiben, was nur mit Vektorgrafiken möglich ist.

Danke für die ausführliche Antwort. Gibt es denn eventuell die Möglichkeit eine eigene Software zu bauen, die Vektorgrafiken erzeugt ? 

Bearbeitet von daniel861

vor 9 Stunden schrieb daniel861:

Gibt es denn eventuell die Möglichkeit eine eigene Software zu bauen, die Vektorgrafiken erzeugt ? 

Klar gibt es die. SVG ist ein ziemlich einfaches plaintext format. Als Softwareentwickler solltest du aber doch schon mal mit solchen Sachen konfrontiert worden sein, oder?

Am 26.11.2024 um 20:27 schrieb Whiz-zarD:

Das Ergebnis ist nicht deterministisch

KI Modelle selbst sind deterministisch. Muss nur richtig in der API konfiguriert werden. Sprachmodell können aber nicht wirklich mit Zahlen und Bits jonglieren. Es wäre möglich, eine syntaktische Beschreibungssprache wie JSON Graph oder ähnliches erzeugen zu lassen, woraus du Grafiken erstellen könntest. Je bekannter desto höher die Erfolgswahrscheinlichkeit. Es könnte nötig sein, zusätzliche Finetuning Schritte durchzuführen. Da hätte ich Zweifel, ob das für dich so einfach umsetzbar wäre.

  • Autor
vor 9 Stunden schrieb Shannon:

Klar gibt es die. SVG ist ein ziemlich einfaches plaintext format. Als Softwareentwickler solltest du aber doch schon mal mit solchen Sachen konfrontiert worden sein, oder?

KI Modelle selbst sind deterministisch. Muss nur richtig in der API konfiguriert werden. Sprachmodell können aber nicht wirklich mit Zahlen und Bits jonglieren. Es wäre möglich, eine syntaktische Beschreibungssprache wie JSON Graph oder ähnliches erzeugen zu lassen, woraus du Grafiken erstellen könntest. Je bekannter desto höher die Erfolgswahrscheinlichkeit. Es könnte nötig sein, zusätzliche Finetuning Schritte durchzuführen. Da hätte ich Zweifel, ob das für dich so einfach umsetzbar wäre.

Danke für die Rückmeldung. Bin im SAP-Umfeld unterwegs, aber klar es gibt für alles Bibliotheken. Die Frage war etwas unpräzise formuliert. Die Antwort hilft mir aber sehr weiter. 

Bearbeitet von daniel861

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.