Vernetzen Sie sich mit uns

Interviews

Professor Eran Yahav, Mitbegründer und Co-CEO von Tabnine – Interviewreihe

mm

Professor Eran YahavDer Mitgründer und Co-CEO von Tabnine ist Informatikprofessor am Technion – Israel Institute of Technology. Seine Forschungsschwerpunkte liegen auf Programmiersprachen, maschinellem Lernen und Softwareentwicklung, insbesondere auf Programmsynthese und der Analyse umfangreicher Codes. Neben seiner akademischen Tätigkeit gründete er Tabnine (ursprünglich Codota), um seine jahrelange Forschung in praktische Entwicklerwerkzeuge umzusetzen und so die KI-gestützte Codevervollständigung und -automatisierung voranzutreiben. Seine Arbeit verbindet Wissenschaft und Wirtschaft mit dem Ziel, KI-generierten Code zuverlässiger, sicherer und kontextsensitiver für reale Unternehmensumgebungen zu gestalten.

tabnin Tabnine ist eine KI-gestützte Codierungsplattform, die Entwickler im gesamten Softwareentwicklungszyklus unterstützt – vom Schreiben und Debuggen von Code bis hin zur Generierung von Tests und Dokumentation. Ursprünglich als Codevervollständigungstool gestartet, hat sie sich zu einer umfassenderen, unternehmensorientierten Plattform entwickelt, die generative KI und agentenbasierte Workflows integriert. So können Teams komplexe Entwicklungsaufgaben automatisieren und gleichzeitig Datenschutz, Sicherheit und Compliance gewährleisten. Mit Unterstützung für Dutzende von Programmiersprachen und Integrationen in gängige IDEs zielt Tabnine darauf ab, die Produktivität von Entwicklern zu steigern und gleichzeitig sicherzustellen, dass KI-generierter Code vertrauenswürdig bleibt und den Unternehmensstandards entspricht.

Sie haben jahrelang am Technion im Bereich Programmanalyse und -synthese geforscht und zuvor bei IBM Research gearbeitet. Welches Problem in der Softwareentwicklung hat Sie dazu bewogen, Tabnine mitzugründen, und wie hat Ihre akademische Forschung die ursprüngliche Vision des Unternehmens geprägt?

Meine akademische Arbeit konzentrierte sich auf Programmanalyse und -synthese, also im Wesentlichen darauf, Maschinen beizubringen, Code zu verstehen und zu generieren. Ich promovierte über Programmanalyse und verbrachte in diesem Bereich auch meine ersten Jahre angewandter Forschung. Die Auseinandersetzung mit Softwarequalitätsproblemen mithilfe der Programmanalyse machte deutlich, dass manche Probleme sehr schwer zu beheben sind, sobald das Programm fehlerhaft geschrieben wurde. Vorbeugen ist besser als Heilen, wie man so schön sagt. Dies überzeugte mich davon, dass der richtige Weg zur Verbesserung der Softwarequalität in der Programmsynthese liegt, der ich den Großteil meiner Forschungszeit und -energie widmete.

Anfangs arbeitete ich an der Programmsynthese für nebenläufige Programme und versuchte, die Erstellung nebenläufiger Programme aus sequenziellen Programmen zu automatisieren. Anschließend wechselte ich zu einer allgemeineren Programmsynthese mithilfe von maschinellem Lernen.

Die Programmsynthese mithilfe von maschinellem Lernen war auch die grundlegende Idee hinter Tabnine. Der Gedanke, der heute selbstverständlich erscheint, war, dass Modelle Codierungsmuster direkt aus großen Codekorpora lernen und Entwickler in Echtzeit unterstützen können. Dieses Grundprinzip ist in allen Phasen des Softwareentwicklungszyklus anwendbar – von der Codeerstellung über die Codeüberprüfung bis hin zur Bereitstellung und darüber hinaus.

Die Vision war stets, den menschlichen Entwickler durch Werkzeuge zu unterstützen, die den Entwicklungsprozess beschleunigen und Reibungsverluste minimieren. Softwareentwicklung ist eine kreative und problemlösende Disziplin, und das Ziel war, dass KI den Prozess durch die Übernahme von Routineaufgaben optimiert und Entwicklern hilft, im Arbeitsfluss zu bleiben. Diese Vision leitet uns auch heute noch, obwohl sich die Technologie seit den Anfängen deutlich weiterentwickelt hat.

Tabnine leistete Pionierarbeit im Bereich KI-gestützter Programmierassistenten, Jahre bevor generative KI mit Tools wie den Modellen von OpenAI zum Mainstream wurde. Wie hat sich die Rolle der KI in der Softwareentwicklung seit diesen Anfängen entwickelt, und welche Lehren hat die Branche aus der ersten Generation von Programmierassistenten gezogen?

Die erste Generation von KI-Programmierassistenten konzentrierte sich hauptsächlich auf Vorhersagen. Im Wesentlichen handelte es sich um fortschrittliche Autovervollständigungssysteme, die Entwicklern halfen, schneller Code zu schreiben, indem sie die nächste Zeile oder Funktion vorhersagten.

Die Veränderung bei Agentenschleifen besteht darin, dass KI nun Aufgaben mit größerer Autonomie bewältigen kann, so dass wir Agenten (bei entsprechender Anleitung) als unabhängige Nachwuchsentwickler betrachten können.

Doch die Branche hat dadurch auch eine wichtige Lektion gelernt: Reine Modellleistung reicht für die Entwicklung von Unternehmenssoftware nicht aus. Modelle, die mit öffentlichen Daten trainiert wurden, können zwar beeindruckende Ergebnisse liefern, berücksichtigen aber oft nicht die Architektur, Abhängigkeiten und Konventionen einer Organisation.

Deshalb geht es in der nächsten Evolutionsstufe nicht nur um größere Modelle oder größere Kontextfenster, sondern darum, diese Modelle mit dem realen Kontext zu verbinden, in dem Software entwickelt wird.

Viele Unternehmen stellen fest, dass die Skalierung von KI-Systemen mehr als nur größere Modelle erfordert – sie braucht einen tieferen organisatorischen Kontext. Warum glauben Sie, dass der Kontext die entscheidende Voraussetzung für eine zuverlässige KI-gestützte Entwicklung ist?

Softwaresysteme sind komplexe Netzwerke von Beziehungen. Eine einzelne Änderung kann sich auf mehrere Dienste, APIs oder nachgelagerte Komponenten auswirken.

Heutige KI-Modelle sind zwar sehr gut darin, plausiblen Code zu generieren, arbeiten aber oft ohne ein strukturiertes Verständnis dieser Zusammenhänge. Ohne dieses Verständnis kann die KI die Konsequenzen einer Änderung nicht zuverlässig abschätzen.

Unternehmen stellen fest, dass die Zuverlässigkeit von KI-Systemen von der Qualität des Kontextes abhängt, in dem sie eingesetzt werden. Versteht ein KI-System die Systemarchitektur, die Abhängigkeiten zwischen den Diensten und die Codierungsstandards des Unternehmens, kann es Code generieren, der viel besser mit der tatsächlichen Funktionsweise des Systems übereinstimmt.

In diesem Sinne wird der Kontext zur nächsten Herausforderung für die Entwicklung von KI in Unternehmen.

Ihre neue Enterprise Context Engine zielt darauf ab, KI-Agenten ein strukturiertes Verständnis der Architektur, Abhängigkeiten und Entwicklungspraktiken einer Organisation zu vermitteln. Wie unterscheidet sich dieser Ansatz von gängigen Methoden wie der abfragegestützten Generierung, auf die viele Unternehmen derzeit setzen?

Die abfragegestützte Generierung ist eine nützliche Technik. Sie ermöglicht es Modellen, relevante Dokumente oder Code-Ausschnitte beim Generieren einer Antwort einzubeziehen.

Doch allein das Abrufen von Informationen schafft kein Verständnis. Es ermöglicht den Zugang zu Informationen, aber nicht zu deren Struktur.

Die Enterprise Context Engine geht noch einen Schritt weiter, indem sie eine strukturierte Darstellung der Softwareumgebung erstellt. Sie analysiert Repositories, Dienste, Abhängigkeiten, APIs und architektonische Beziehungen und organisiert diese zu einem Modell, das die tatsächliche Funktionsweise des Systems abbildet.

Dies ermöglicht es KI-Systemen, die Beziehungen zwischen Komponenten zu analysieren, anstatt lediglich Textfragmente abzurufen. In komplexen Unternehmensumgebungen ist diese Unterscheidung von großer Bedeutung.

KI-Programmierwerkzeuge entwickeln sich von Autovervollständigungsvorschlägen hin zu autonomen Agenten, die mehrstufige Arbeitsabläufe ausführen können. Wie wird sich Ihrer Meinung nach das Verhältnis zwischen menschlichen Entwicklern und agentenbasierten Systemen in den nächsten fünf Jahren verändern?

KI-Systeme werden zunehmend Routineaufgaben in der Softwareentwicklung übernehmen. Sie sind bereits jetzt in der Lage, Funktionen vollständig zu implementieren, inklusive Tests und Dokumentation. Jeder Entwickler wird somit zum Teamleiter eines KI-Entwicklungsteams. Die größte Herausforderung besteht darin, die Anforderungen an dieses Team zu kommunizieren und sicherzustellen, dass die generierten Artefakte den definierten Anforderungen entsprechen.

Softwareentwicklung dreht sich jedoch im Kern um Problemlösung und Design. Menschliche Entwickler werden auch weiterhin die Architektur definieren, Kompromisse eingehen und die Gesamtrichtung der Systeme vorgeben.

Verändert wird sich die Abstraktionsebene, auf der Entwickler arbeiten. Anstatt sich auf Code zu konzentrieren, werden sie zunehmend übergeordnete Arbeitsabläufe orchestrieren und mit KI-Systemen zusammenarbeiten, die Teile dieser Arbeitsabläufe ausführen.

Mit anderen Worten: Die Rolle der Entwickler wird strategischer, da die KI immer mehr mechanische Aufgaben übernimmt.

Tabnine hat darauf hingewiesen, dass Unternehmenskunden in manchen Umgebungen Akzeptanzraten von KI-generiertem Code von bis zu 80 % erreichen können. Welche Kennzahlen sollten Unternehmen verwenden, um festzustellen, ob KI-Codierungstools die Produktivität der Entwickler tatsächlich steigern oder lediglich mehr Code generieren?

Die entscheidende Frage ist nicht, wie viel Code die KI generiert, sondern wie viel nützliche Arbeit sie tatsächlich leistet.

Organisationen sollten verschiedene Kennzahlen verfolgen. Eine davon ist die Akzeptanzrate beim ersten Durchlauf, die misst, wie oft KI-generierter Code ohne Änderungen verwendet werden kann. Eine weitere ist die Review-Zykluszeit – wie viele Iterationen erforderlich sind, bevor ein Pull Request zusammengeführt werden kann.

Organisationen sollten auch den Zeitaufwand der Entwickler für Nacharbeiten sowie die Vorlaufzeit für Änderungen von der Entwicklung zur Produktion berücksichtigen.

Wenn KI-Tools die Produktivität tatsächlich steigern, sollten sich Verbesserungen bei allen relevanten Kennzahlen zeigen. Entwickler verbringen weniger Zeit mit der Korrektur von generiertem Code und können sich stattdessen auf wertschöpfendere Aufgaben konzentrieren.

Unternehmen zögern weiterhin, proprietären Code externen Modellen zugänglich zu machen. Wie trägt das Konzept des „Trusted AI Coding“ zur Lösung von Bedenken hinsichtlich Governance, Datenschutz und Compliance bei, die die Einführung von KI-Entwicklungswerkzeugen in Unternehmen bisher gebremst haben?

Vertrauen ist einer der wichtigsten Faktoren bei der Einführung von KI in Unternehmen.

Vertrauen ist die größte Herausforderung für den Einsatz von KI-Ingenieuren. Wie können wir sicherstellen, dass KI-Ingenieure autonom kritische Softwareentwicklungsaufgaben erledigen? Wie gewährleisten wir, dass ihre Handlungen unseren Erwartungen an Qualität, Sicherheit und die Einhaltung unserer Richtlinien entsprechen? Damit KI-Ingenieure als vollwertige Mitglieder unserer Entwicklungsteams akzeptiert werden, müssen sie genauso vertrauenswürdig sein wie unsere sorgfältig geprüften und eingearbeiteten Teammitglieder.

Die Bewältigung dieser Herausforderung beruht auf zwei entscheidenden Säulen:

  • Personalisierung: Wir statten den KI-Ingenieur mit einem tiefen Verständnis Ihrer Organisation, Ihrer Codebasis und Ihrer Best Practices aus.
  • KontrollierenDie Implementierung robuster Systeme, um sicherzustellen, dass der gesamte Code – sowohl KI-generierter als auch von Menschen geschriebener – den Qualitäts-, Sicherheits-, Leistungs- und Zuverlässigkeitsstandards Ihrer Organisation entspricht.

Darüber hinaus bedeutet Trusted AI Coding, Organisationen die Kontrolle über den Einsatz von KI zu geben und eine zentrale Steuerung und Kontrolle zu gewährleisten.

Sie haben angedeutet, dass der organisatorische Kontext zu einer grundlegenden Schicht im KI-Stack von Unternehmen werden könnte – ähnlich wie Datenbanken oder Cloud-Infrastrukturen in früheren Computerära. Wie sieht diese zukünftige Architektur aus?

Wenn man sich die Entwicklung der Unternehmens-Technologie ansieht, kann man oft beobachten, wie neue Infrastrukturschichten entstehen.

Datenbanken bildeten die Grundlage für die Datenverwaltung. Cloud-Plattformen bildeten die Grundlage für den Betrieb von Anwendungen in großem Umfang.

Im Zeitalter der KI benötigen Organisationen eine Infrastruktur, die es KI-Systemen ermöglicht, die interne Struktur des Unternehmens – seine Systeme, Beziehungen und betrieblichen Einschränkungen – zu verstehen.

Diese Infrastrukturschicht wird einen strukturierten Kontext bereitstellen, den mehrere KI-Systeme nutzen können, seien es Programmierassistenten, Support-Agenten oder Werkzeuge zur Automatisierung von Betriebsabläufen.

In diesem Sinne wird der Kontext zu einer gemeinsamen Grundlage für KI in Unternehmen.

Viele Unternehmen entwickeln Programmierassistenten, die eng an ein einziges Basismodell gekoppelt sind. Tabnine hingegen ermöglicht es Unternehmen, je nach Bedarf verschiedene Modelle zu verbinden. Warum ist Modellflexibilität für die langfristige Entwicklung von KI-Entwicklungswerkzeugen für Unternehmen so wichtig?

Das KI-Ökosystem entwickelt sich sehr schnell. Häufig werden neue Modelle veröffentlicht, und verschiedene Modelle weisen oft Stärken in unterschiedlichen Bereichen auf.

Unternehmen sollten ihre Entwicklungsprozesse nicht jedes Mal neu gestalten müssen, wenn sich die Modelllandschaft ändert. Indem wir Organisationen die Möglichkeit geben, Modelle auszuwählen und zwischen ihnen zu wechseln, bieten wir Flexibilität, die ihre KI-Strategie zukunftssicher macht.

Die Flexibilität des Modells ermöglicht es Organisationen außerdem, Leistung, Kosten, Datenschutzanforderungen und Bereitstellungsbeschränkungen in Einklang zu bringen.

Langfristig werden Unternehmen voraussichtlich in einem Multi-Modell-Umfeld agieren, und Entwicklungsplattformen sollten unter Berücksichtigung dieser Realität konzipiert werden.

Für CTOs und Entwicklungsleiter, die heute KI-Entwicklungsplattformen evaluieren: Was sind die größten Fehler, die Unternehmen bei der Implementierung von KI-Codierungswerkzeugen begehen, und wie können sie diese vermeiden?

Ein häufiger Fehler besteht darin, sich ausschließlich auf die Leistungsfähigkeit des Modells zu konzentrieren. Größere Modelle sind zwar zweifellos ein wichtiger Bestandteil, aber die Zuverlässigkeit in realen Umgebungen hängt davon ab, wie gut die KI das System versteht, in dem sie operiert.

Ein weiterer Fehler ist der Einsatz von KI-Tools ohne Berücksichtigung von Governance- und Sicherheitsanforderungen. Unternehmen benötigen klare Richtlinien für den Zugriff auf Code, die Bereitstellung von Modellen und die Validierung von Ergebnissen.

Schließlich erwarten Unternehmen mitunter, dass KI sofortige Produktivitätssteigerungen erzielt, ohne Arbeitsabläufe anzupassen oder ausreichend Kontext bereitzustellen. Erfolgreiche Implementierungen erfordern in der Regel die Integration von KI in bestehende Entwicklungsprozesse und die Anbindung an den Code und die Architektur des Unternehmens.

Wenn diese Elemente zusammenwirken, kann KI zu einem leistungsstarken Beschleuniger für die Softwareentwicklung werden und ist nicht nur ein weiteres Werkzeug.

Vielen Dank für das tolle Interview, Leser, die mehr erfahren möchten, sollten vorbeischauen tabnin.

Antoine ist ein visionärer Leiter und Gründungspartner von Unite.AI, angetrieben von einer unerschütterlichen Leidenschaft für die Gestaltung und Förderung der Zukunft von KI und Robotik. Als Serienunternehmer glaubt er, dass KI für die Gesellschaft ebenso umwälzend sein wird wie Elektrizität, und schwärmt oft vom Potenzial disruptiver Technologien und AGI.

Als Futuristwidmet er sich der Erforschung, wie diese Innovationen unsere Welt prägen werden. Darüber hinaus ist er der Gründer von Wertpapiere.io, eine Plattform, deren Schwerpunkt auf Investitionen in Spitzentechnologien liegt, die die Zukunft neu definieren und ganze Branchen umgestalten.