Skip to content

nashtech-garage/ntg-jvm-agent

Repository files navigation

NTG JVM Agent

This project aims to practice building a chatbot in Kotlin

Technologies and frameworks

  • Kotlin
  • Spring Boot
  • Spring AI
  • GitHub models
  • PostgreSQL

Getting started

  • Setup GitHub models (free): Create your Fine-grained personal access tokens in GitHub https://github.com/settings/personal-access-tokens. The token needs to have models:read permissions.

  • Update the application.properties with your GitHub token

  • Choose AI Provider:

  • Enable the base URL of your provider in application.properties

    • GitHub Models: spring.ai.openai.base-url=https://models.github.ai/inference
    • Google Gemini: spring.ai.openai.chat.base-url=https://generativelanguage.googleapis.com
  • Update the application.properties with your GitHub token or Gemini API key.

Run with Docker

  • Make sure Docker and Docker Compose are installed on your machine.
  • Update the OPEN_API_KEY value in your .env file with your GitHub personal access token.
  • Open a terminal of your choice, navigate to the ntg-jvm-agent directory, and run: docker compose up

Run Locally

Backend:

  • Open the authorization-service project. Start the application by running the class:Open mcp-server project, start application by running class:
    • MCPServerApplication
  • Open the mcp-server project. Start the application by running the class:
    • MCPServerApplication
  • Open the orchestration-service project. Update the property spring.ai.openai.api-key in application.properties with your GitHub token. Start the application by running the class:
    • OrchestratorApplication

FrontEnd

  • Open chat-ui project, start application by running command:
    • npm run build then
    • npm run dev
  • Open admin-ui project, start application by running command: npm run build then npm run dev
    • npm run build then
    • npm run dev

Services

Contributing

By contributing, you agree that your contributions will be licensed under MIT license.

About

A sample project with Kotlin, Spring Boot and Spring AI

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors