Skip to content
@code-philia

CoPhi (Code Philia) Group

The Software Engineering research group in SJTU, where "Co" for Code, "Phi" for love and wisdom, from the term "PhD" (i.e., Philia Sophia of Doctor)

Welcome to CoPhi Group at SJTU 👋

CoPhi Group is a research group on software engineering, automatic programming, explainable AI, and web/AI security in the Department of Computer Science and Engineering, Shanghai Jiao Tong University. We also maintain close collaboration with the School of Computing, National University of Singapore.

Our research aims to build intelligent, trustworthy, and explainable software systems in the era of large language models and AI-generated content. In particular, we study how to automatically generate, test, debug, explain, and secure software systems.

Research Directions

Automatic Programming

We develop techniques and systems that turn complex software requirements into executable and evolvable software artifacts.

  • Requirement Compilation We study how to compile and evolve complex specifications into runnable software projects, including code repositories, user interfaces, APIs, databases, tests, and traceability links. Our goal is to support both zero-to-one software construction and continuous requirement-driven software evolution.

  • Software Testing We generate project-specific test cases from requirements, code, and execution objectives. Our work covers requirement-based testing, branch-coverage-oriented testing, test-case synthesis, and test evolution.

  • Software Debugging We investigate automated debugging techniques that synthesize debugging processes, localize root causes, explain failures, and repair software behaviors. Our goal is to help developers understand why a program behaves incorrectly and how it can be fixed. Explainable AI and Its Applications

We build methods that help developers, researchers, and users understand the behavior of machine learning models.

Representation Analysis and Visualization

We analyze and visualize how representation spaces evolve during model training. By converting the training process into interactive visualizations, we help model developers inspect representation dynamics, identify important training events, and understand model behavior. We study how to explain a model prediction by identifying the training data samples that contribute to it. Our goal is to provide actionable explanations that support model debugging, data curation, and trustworthy AI development.

Web and AI Security

We develop explainable and deployable security techniques for the modern web and AI ecosystem.

  • Web Misinformation and Phishing Detection We detect and explain fake websites, phishing webpages, malicious emails, and scam SMS messages. We also monitor real-world phishing campaigns and build explainable tools for both security engineers and end users.

  • AI Security We study the security risks of large language models and AI agents, including prompt injection attacks and adversarial misuse. Our goal is to build safer and more reliable AI systems for tool use, retrieval, and software automation. Selected Research Themes

Our recent work has appeared in venues such as ICSE, FSE, ASE, ISSTA, OOPSLA, USENIX Security, CCS, NeurIPS, ICLR, EMNLP, AAAI, and IJCAI.

Representative themes include:

  • Requirement compilation and agentic software engineering
  • Project-specific test generation from requirements
  • Automated debugging and root-cause analysis
  • Explainable representation learning and training-process visualization
  • Training data attribution for model explanation
  • Explainable phishing and scam detection
  • Prompt-injection defense for LLM-based systems

Contact

For collaboration, research discussion, or student opportunities, please visit our group homepage or contact us (lin_yun@sjtu.edu.cn) through Shanghai Jiao Tong University.

Pinned Loading

  1. time-travelling-visualizer time-travelling-visualizer Public

    Forked from llmhyy/training-visualizer

    Python 10 14

  2. Dynaphish Dynaphish Public

    Dynaphish: A complementary module for any reference-based phishing detector with BrandKnowledgeExpansion and WebInteraction

    Python 20 4

  3. DeepVisualInsight DeepVisualInsight Public

    Forked from xianglinyang/DeepVisualInsight

    DeepVisualInsight (DVI) is a time-travelling visualization solution for how the classification boundaries of a learned model is trained in two-dimensional space.

    Jupyter Notebook 1

  4. tregression tregression Public

    Forked from llmhyy/tregression

    Analyze execution trace to find regression bugs

    Java 1 1

  5. microbat microbat Public

    Forked from llmhyy/microbat

    A feedback-based debugger for interactively recommending suspicious step in buggy program execution.

    Java 2 2

  6. Phishpedia Phishpedia Public

    Forked from lindsey98/Phishpedia

    Official Implementation of "Phishpedia: A Hybrid Deep Learning Based Approach to Visually Identify Phishing Webpages" USENIX'21

    Python 1 1

Repositories

Showing 10 of 50 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…