Zum Inhalt springen
ma-ki.io

Alle Beiträge

Im Beruf · 2 von 7 Nr. 0037

Das Angebot kommt als PDF

Von Martin Kirschner · · 3 Minuten Lesezeit · Belege geprüft am

Drei Firmen bieten an, eine schickt den Datenträger, zwei schicken PDF. Warum die Tabelle im PDF keine Tabelle ist, was ein Sprachmodell daran gut kann und was nicht, und was nach dem Einlesen immer noch ein Mensch prüft.

Drei Angebote für die Lüftung liegen am Tisch. Eine Firma hat den Datenträger im Austauschformat fürs AVA-Programm mitgeschickt, der lässt sich direkt einlesen, und die Spalte im Preisspiegel steht. Die zwei anderen haben ihr Leistungsverzeichnis als PDF ausgegeben, unterschrieben und gemailt. Sieht gleich aus, ist aber etwas völlig anderes.

Die Tabelle im PDF ist keine Tabelle

Auf der Angebotsseite sehe ich Spalten: Positionsnummer, Kurztext, Menge, Einheit, Einheitspreis, Gesamtpreis. Das Angebots-PDF weiß davon in der Regel nichts. Was drinsteht, sind vor allem Zeichen mit Koordinaten: dieses Wort so weit von links, so weit von unten, in dieser Schrift. Dass die Zahl rechts zur Position links gehört, steht nirgends. Das sieht nur, wer die Seite anschaut.

Das Format könnte mehr. ISO 32000-2:2020, Abschnitt 14.8, beschreibt Tagged PDF mit Strukturelementen für Tabellen, Zeilen, Kopfzellen und Datenzellen; die PDF Association führt die Korrekturen zu genau diesen Abschnitten öffentlich (Errata zu ISO 32000-2:2020, Abschnitt 141). Ein so ausgezeichnetes PDF trägt die Tabellenstruktur mit. Nur: Angebots-PDFs aus Kalkulationsprogrammen tun das nach meiner Erfahrung fast nie. Was ankommt, ist ein Blatt mit Zeichen und Positionen. Kopiere ich es in eine Tabellenkalkulation, landet der Langtext in der Preisspalte, der Einheitspreis rutscht eine Zeile tiefer, und bei Positionen mit Zeilenumbruch stimmt gar nichts mehr.

Der Datenträger löst genau das. Er trägt jede Position als eigenen Datensatz mit Feldern, kein Stück Seite. Mit Datenträger habe ich das Problem nicht, ohne ihn habe ich ein Bild von einer Tabelle.

Wobei das Modell hilft, und wobei nicht

In meinem Ablauf sieht das Modell die Seite nicht. Es bekommt den Text, den ein Extraktionsschritt vorher samt Zeichenposition aus der Datei geholt hat. Multimodale Modelle können eine gerenderte Seite inzwischen auch als Bild verarbeiten, das habe ich hier nicht gebaut. Ein erfundenes Beispiel: Steht da „0203.0415 Kanalbogen 90° verzinkt“, in der nächsten Zeile der Rest des Kurztexts, dann „12 Stk“, „48,20“ und „578,40“, dann erkennt es, dass das eine Position ist, auch wenn der Preis rechts unten steht und der Text links oben. Diese Zuordnung von Positionsnummer, Menge und Einheitspreis war die Arbeit, die vorher von Hand geschah, Zeile für Zeile, Angebot für Angebot. Dafür ist das Modell gut.

Beim Rechnen ist es das nicht. Menge mal Einheitspreis, Summe je Titel, Nachlass abziehen: Ein Modell ohne Rechenwerkzeug leitet das aus Sprachmustern ab, und dabei verrechnet es sich, wie im Beitrag was ein Sprachmodell nicht kann steht. Deshalb rechnet in meinem Programm nicht das Modell, sondern gewöhnlicher Code. Das Modell bringt die Zahlen in Spalten, der Rest ist Multiplikation und Addition, jederzeit wiederholbar und nachvollziehbar.

Warum es ein eigenes Programm wurde

Ein Werkzeug, das PDF-Angebote aus verschiedenen Kalkulationsprogrammen in einen Preisspiegel bringt und dabei mit unterschiedlichen Layouts zurechtkommt, fand ich am Markt nicht. Also habe ich es gebaut, wie die anderen Abläufe, die ich in drei Formen von Automatisierung beschrieben habe. Aus rund 25 Minuten je Angebot wurden etwa zwei. Nicht null, denn die zwei Minuten sind der Teil, der bleibt.

Was der Mensch danach prüft

Die gewonnene Zeit geht in Prüfung, nicht in Abschreiben. Darauf achte ich:

  • Summen. Titelsummen und Angebotssumme aus dem PDF gegen die nachgerechneten Werte. Weicht etwas ab, ist entweder das Einlesen schiefgegangen oder das Angebot rechnet falsch. Beides will ich wissen, bevor der Preisspiegel weitergeht.
  • Alternativ- und Eventualpositionen. Sie gehören nicht in die Hauptsumme. Ob das Programm die Kennzeichnung sauber getrennt hat, kontrolliere ich am Original.
  • Vorbemerkungen. Nachlässe, Skonto, Preisgleitung, Ausschlüsse wie „ohne Gerüst“ oder „Montage nicht enthalten“. Das steht im Fließtext vorne oder hinten, nicht in der Tabelle, und dort kann der günstigste Einheitspreis teuer werden.
  • Leere Positionen. Ein Strich oder eine leere Zeile bei einer Firma ist kein Nullpreis. Das gehört nachgefragt, nicht eingerechnet.

Der Preisspiegel ist danach nicht fertig, aber er ist da. Und jede Zahl, die das Modell zugeordnet hat, lässt sich auf der Seite nachschlagen, von der sie stammt.

Quellen

  1. 1Errata zu ISO 32000-2:2020, Abschnitt 14 pdf-issues.pdfa.org

Teilen

Lesereise · KI im Beruf · 3 von 7

Nächster Schritt: Zwölf Seiten Mehrkosten

Dazu passt

Weiter in Im Beruf Dreihundert Fotos vom Baustellenrundgang