diff --git a/docs/code-howtos/ai.md b/docs/code-howtos/ai.md new file mode 100644 index 00000000000..aa4f9c45e1f --- /dev/null +++ b/docs/code-howtos/ai.md @@ -0,0 +1,32 @@ +--- +parent: Code Howtos +--- + +# AI + +The AI feature of JabRef is built on [LangChain4j](https://github.com/langchain4j/langchain4j) and [Deep Java Library](https://djl.ai/). + +## Architectural Decisions + +See [ADR-0037](../decisions/0037-rag-architecture-implementation.md) for the decision regarding the RAG infrastructure. + +## Feature "Chat with PDF(s)" + +This is implemented mainly in the class [org.jabref.logic.ai.chatting.AiChatLogic]. +From there, one will find preferences and other required infrastructure. + +## Feature "Summarize PDF(s)" + +This is implemented in the class [org.jabref.logic.ai.summarization.GenerateSummaryTask]. + +## Feature "BibTeX from Reference Text" + +The general interface is [org.jabref.logic.importer.plaincitation.PlainCitationParser]. +The class implementing it using AI is [org.jabref.logic.importer.plaincitation.LlmPlainCitationParser]. + +## Feature "Reference Extractor" + +Extracts the list of references (Section ["References"](../glossary/references.md)) from the last page of the PDF to a List of BibEntry. + +The general interface is [org.jabref.logic.importer.fileformat.pdf.BibliographyFromPdfImporter]. +The class implementing it using AI is [org.jabref.logic.importer.plaincitation.LlmPlainCitationParser].