The rapid advancement of large language models (LLMs) has sparked their application across diverse domains, including software engineering (SE). In SE, LLMs have shown strong performance on a range of tasks and enabled practical assistance tools such as GitHub Copilot and Cursor. However, integrating LLMs into complex real-world applications remains challenging, particularly for domain-specific tasks that are underrepresented in LLM training data.
Human experts typically follow domain-specific best practices when approaching complex tasks, relying on comprehensive workflows and a variety of domain-specific tools. To enhance LLMs' ability to handle such tasks, existing research has focused on integrating these expert practices into LLM-based applications. Practical frameworks like LangChain and LangGraph have been proposed to support this integration by enabling the construction of domain-specific workflows. However, the expressiveness of workflow representations in these frameworks remains limited, often lacking modularity and the ability to model complex behaviors.
Furthermore, domain-specific tools often impose strict constraints on input data. To integrate LLMs with such tools effectively, it is essential to ensure that LLM-generated outputs conform to these constraints. However, the inherent nondeterminism of LLMs poses a significant challenge in achieving consistent outputs with respect to the constraints. While existing research has explored techniques such as constrained decoding to improve output consistency, these methods primarily target simple output formats and do not extend to more complex structures like graphs. Additionally, the relationship between consistency and the overall quality of LLM-generated outputs, particularly in graphs, remains insufficiently understood.
This thesis proposes two systematic approaches to address the challenges of workflow representation and output consistency in LLM-based applications. The contributions are organized around two high-level research questions. To tackle the first challenge on workflow representation (HRQ1), SHERPA, a framework that models domain-specific workflows as state machines, facilitates the integration of LLMs with domain-specific tools. This framework decouples workflow representation from its concrete implementation, supporting a modular and flexible design of LLM-based applications. Systematic evaluation demonstrates that SHERPA enables rapid experimentation with diverse workflows, leading to improved task performance and a better balance between cost and effectiveness.
To address the second challenge on output consistency (HRQ2), the AbsCon framework is designed to ensure the consistency of LLM-generated graphs by leveraging the nondeterministic nature of LLMs. Generalizing a constraint optimization-based approach originally proposed for scene graph generation, AbsCon guarantees that the generated graphs satisfy domain-specific constraints. Evaluation results further demonstrate that enforcing such consistency also significantly improves the overall quality of the generated graphs when compared to human-constructed ground truths. As future work, the potential integration of the two approaches may further enhance the overall performance of LLM-based applications, paving the way for domain-driven and consistent LLM integration
Les progrès rapides des grands modèles de langage (LLM) ont stimulé leur application dans divers domaines, y compris le génie logiciel (SE). Dans le domaine du génie logiciel, les LLM ont fait preuve d’une grande performance sur une série de tâches et ont permis la création d’outils d’assistance pratiques tels que GitHub Copilot et Cursor. Cependant, l’intégration des LLM dans des applications complexes du monde réel reste un défi, en particulier pour les tâches spécifiques au domaine qui sont sous-représentées dans les données d’entraînement des LLM.
Les experts humains suivent généralement les meilleures pratiques spécifiques à leur domaine lorsqu’ils abordent des tâches complexes, en s’appuyant sur des flux de travail complets et une variété d’outils spécifiques à leur domaine. Pour améliorer la capacité des LLM à gérer de telles tâches, la recherche existante s’est concentrée sur l’intégration de ces pratiques d’experts dans les applications basées sur les LLM. Des cadres pratiques tels que LangChain et LangGraph ont été proposés pour soutenir cette intégration en permettant la construction de flux de travail spécifiques à un domaine. Cependant, l’expressivité des représentations de flux de travail dans ces cadres reste limitée, manquant souvent de modularité et de capacité à modéliser des comportements complexes.
En outre, les outils spécifiques au domaine imposent souvent des contraintes strictes sur les données d’entrée. Pour intégrer efficacement les LLM à de tels outils, il est essentiel de s’assurer que les résultats générés par les LLM sont conformes à ces contraintes. Cependant, le nondéterminisme inhérent aux LLM pose un défi important dans l’obtention de résultats cohérents par rapport aux contraintes. Bien que la recherche existante ait exploré des techniques telles que le décodage contraint pour améliorer la cohérence des sorties, ces méthodes ciblent principalement des formats de sortie simples et ne s’étendent pas à des structures plus complexes telles que les graphes. En outre, la relation entre la cohérence et la qualité globale des sorties générées par le LLM, en particulier dans les graphes, reste insuffisamment comprise.
Cette thèse propose deux approches systématiques pour relever les défis de la représentation du flux de travail et de la cohérence des résultats dans les applications basées sur le LLM. Les contributions sont organisées autour de deux questions de recherche de haut niveau. Pour relever le premier défi sur la représentation du flux de travail (HRQ1), SHERPA, un cadre qui modélise les flux de travail spécifiques au domaine comme des machines d’état, facilite l’intégration des LLM avec des outils spécifiques au domaine. Ce cadre dissocie la représentation du flux de travail de sa mise en œuvre concrète, ce qui permet une conception modulaire et flexible des applications basées sur les MLD. Une évaluation systématique démontre que SHERPA permet une expérimentation rapide de divers flux de travail, ce qui conduit à une amélioration de la performance des tâches et à un meilleur équilibre entre le coût et l’efficacité.
Pour répondre au deuxième défi sur la cohérence des résultats (HRQ2), le cadre AbsCon est conçu pour assurer la cohérence des graphes générés par les LLM en tirant parti de la nature non déterministe des LLM. Généralisant une approche basée sur l’optimisation des contraintes proposée à l’origine pour la génération de graphes de scène, AbsCon garantit que les graphes générés satisfont aux contraintes spécifiques au domaine. Les résultats de l’évaluation démontrent en outre que l’application de cette cohérence améliore également de manière significative la qualité globale des graphes générés par rapport aux vérités de base construites par l’homme. En tant que travail futur, l’intégration potentielle des deux approches peut améliorer davantage la performance globale des applications basées sur le LLM, ouvrant la voie à une intégration LLM cohérente et axée sur le domaine.