A Case Study in Engineering a Conversational Programming Assistant's Persona 121-129

The Programmer's Assistant is an experimental prototype software development environment that integrates a chatbot with a code editor. Conversational capability was achieved by using an existing code-fluent Large Language Model and providing it with a prompt that establishes a conversational interaction pattern, a set of conventions, and a style of interaction appropriate for the application. A discussion of the evolution of the prompt provides a case study in how to coax an existing foundation model to behave in a desirable manner for a particular application.

[1]  Justin D. Weisz,et al.  The Programmer’s Assistant: Conversational Interaction with a Large Language Model for Software Development , 2023, IUI.

[2]  Juho Leinonen,et al.  Experiences from Using Code Explanations Generated by Large Language Models in a Web Software Development E-Book , 2022, SIGCSE.

[3]  Paul Denny,et al.  Conversing with Copilot: Exploring Prompt Engineering for Solving CS1 Problems Using Natural Language , 2022, SIGCSE.

[4]  Alexander M. Rush,et al.  Interactive and Visual Prompt Engineering for Ad-hoc Task Adaptation with Large Language Models , 2022, IEEE Transactions on Visualization and Computer Graphics.

[5]  Pascale Fung,et al.  Survey of Hallucination in Natural Language Generation , 2022, ACM Comput. Surv..

[6]  David Vandyke,et al.  Prompting for a conversation: How to control a dialog model? , 2022, CAI.

[7]  Eric Michael Smith,et al.  BlenderBot 3: a deployed conversational agent that continually learns to responsibly engage , 2022, ArXiv.

[8]  G. Satzger,et al.  On the Influence of Explainable AI on Automation Bias , 2022, ECIS.

[9]  Cherepanov,et al.  Competition-level code generation with AlphaCode , 2022, Science.

[10]  Renelito Delos Santos,et al.  LaMDA: Language Models for Dialog Applications , 2022, ArXiv.

[11]  Xuedong Huang,et al.  Human Parity on CommonsenseQA: Augmenting Self-Attention with External Attention , 2021, IJCAI.

[12]  David Bieber,et al.  Show Your Work: Scratchpads for Intermediate Computation with Language Models , 2021, ArXiv.

[13]  Wojciech Zaremba,et al.  Evaluating Large Language Models Trained on Code , 2021, ArXiv.

[14]  Laria Reynolds,et al.  Prompt Programming for Large Language Models: Beyond the Few-Shot Paradigm , 2021, CHI Extended Abstracts.

[15]  Mark Chen,et al.  Language Models are Few-Shot Learners , 2020, NeurIPS.

[16]  Lewis Lorton,et al.  Healthcare , 2000, White Paper on Blockchain in Trade Facilitation.

[17]  S. Mahomed Healthcare, artificial intelligence and the Fourth Industrial Revolution: Ethical, social and legal considerations , 2018, South African Journal of Bioethics and Law.

[18]  Lukasz Kaiser,et al.  Attention is All you Need , 2017, NIPS.

[19]  Richard C. Waters,et al.  The programmer's apprentice , 1990, ACM Press frontier series.