https://github.com/extrawest/gemini-function-calling-spring-ai-showcase
Gemini Function Calling in Vertex AI. Designed using Java 21, Spring Boot, and LangChain4J, this cutting-edge service integrates Gemini Call Function with external APIs to deliver seamless search capabilities for flights, hotels, and attractions
https://github.com/extrawest/gemini-function-calling-spring-ai-showcase
ai call-function gemini java21 langchain4j maven spring-boot vertex-ai
Last synced: 28 days ago
JSON representation
Gemini Function Calling in Vertex AI. Designed using Java 21, Spring Boot, and LangChain4J, this cutting-edge service integrates Gemini Call Function with external APIs to deliver seamless search capabilities for flights, hotels, and attractions
- Host: GitHub
- URL: https://github.com/extrawest/gemini-function-calling-spring-ai-showcase
- Owner: extrawest
- License: apache-2.0
- Created: 2025-01-08T13:42:46.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-13T09:40:32.000Z (over 1 year ago)
- Last Synced: 2025-01-13T10:31:52.361Z (over 1 year ago)
- Topics: ai, call-function, gemini, java21, langchain4j, maven, spring-boot, vertex-ai
- Language: Java
- Homepage:
- Size: 128 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Gemini Function Calling in Vertex AI - Java Spring AI Showcase
[]()
[](mailto:yevhen.ruban@extrawest.com)
[]()
[](https://opensource.org/licenses/Apache-2.0)

Designed using Java 21, Spring Boot, and LangChain4J, this cutting-edge service integrates Gemini Call Function with external APIs to deliver seamless search capabilities for flights, hotels, and attractions. By leveraging advanced AI, it transforms user queries into personalized travel recommendations, streamlining trip planning like never before.
https://github.com/user-attachments/assets/e4a61193-8250-41ef-bb02-24d3ee96657f
## Key Features
- **AI-Powered Recommendations**: Provide personalized flights, hotels, and attractions recommendations based on user queries.
- **LangChain4j-Powered Insights**: Leverage LangChain4j for natural language understanding and effective query handling, ensuring accurate and contextually relevant responses.
- **Spring Boot Scalability**: Built on Spring Boot 3.3.3, ensuring a reliable and scalable backend architecture for seamless performance.
- **Dynamic Search and Recommendations**: Allow users to search for flights, hotels, attractions and receive personalized recommendations based on search results or user preferences.
## Tech Stack
- **Java 21**
- **SpringBoot 3.3.3**: Backend framework for building fast and scalable applications.
- **Gemini in Vertex AI**: Provides models for describe image. Model: gemini-1.5-flash-001
- **Langchain4j**: Supercharge your Java application with the power of LLMs.
- **Vaadin Framework**: Vaadin is a complete platform that works out of the box. It includes web frameworks, UI components
## Running On Local Machine (Linux):
1. Set up the following environment variables.
- export PROJECT_ID=your_project_id;
- export LOCATION=your_location;
- export FLIGHT_API_KEY=api_key;
- export HOTEL_API_KEY=api_key;
- export ATTRACTION_API_KEY=api_key;
2. Run the app by running `Application.java` in your IDE or `mvn` in the command line.
## Contributing
Feel free to open issues or submit pull requests to improve the project. Contributions are welcome!