This article will show you how to use Spring AI support for Java function calling with the OpenAI chat model. The Spring AI function calling feature lets us connect the LLM capabilities with external APIs or systems. OpenAI’s models are trained to know when to call a function. We will work on implementing a Java function that takes the call arguments from the AI model and sends the result back. Our main goal is to connect to the third-party APIs to provide these results. Then the AI model uses the provided results to complete the conversation. This article is the…
Author: drweb
This article will teach you how to create a Spring Boot application that uses RAG (Retrieval Augmented Generation) and vector store with Spring AI. We will continue experiments with stock data, which were initiated in my previous article about Spring AI. This is the third part of my series of articles about Spring Boot and AI. It is worth reading the following posts before proceeding with the current one: https://piotrminkowski.com/2025/01/28/getting-started-with-spring-ai-and-chat-model: The first tutorial introduces the Spring AI project and its support for building applications based on chat models like OpenAI or Mistral AI. https://piotrminkowski.com/2025/01/30/getting-started-with-spring-ai-function-calling: The second tutorial shows Spring AI…
You may have always dreamed of creating your own video game. Late nights spent sketching characters, scribbling level designs, and imagining epic boss battles have fueled your passion.Now, you’re ready to turn those ideas into reality. Python, with its beginner-friendly syntax and powerful libraries, offers the perfect starting point for your game development journey.Python’s influence reaches beyond traditional video games. Many online gaming platforms use it for backend operations and game logic, this versatility shows Python’s strength in gaming.Let’s explore the top 5 Python libraries that are changing game development.Pygame: The Classic Choice for Python Game DevelopmentPygame remains a favorite…
Creating Finxter was a life-changing, almost spiritual experience for me. My main goal was always to help improve collective intelligence.Pursuing that goal, we educated more than 16 million people online. And that’s counting only those on the blog itself.Let’s reflect on some key observationsOn average, a Finxter visitor spent 42 seconds (of all numbers) investing their most precious resource: time & attention.That’s millions of human attention minutes.❓ Q: But how much is human attention worth? Well – the baseline calculation would be: 16 million people * 42s engagement time= 11 million minutes= 186k hoursFinxter is an educational/technical site so the…
I’ve always found Python to be a fun and flexible way to make games. It has the gentle syntax I like, plus a range of libraries that keep me engaged and on the edge.In this short piece, I’m sharing a list of my top Python game libraries and what makes them stand out compared to each other. Let’s begin.First, Why Does Python Feel Right For Game Development?Python often brings a sense of simplicity and friendliness. People new to coding can learn it faster because they don’t have to work with complicated syntax. Also, Python OGs stick to it because of…
✨ Key Points AGI is expected around the 2040s, with some predictions as early as 2025.ASI is predicted to follow shortly after AGI, likely by the mid-2040s to early 2050s.AGI Timeline✨ Artificial General Intelligence (AGI) is AI that can perform any intellectual task a human can, at human level. Based on expert surveys and predictions, AGI is anticipated to be achieved around the 2040s.For example, the AI Impacts 2023 survey, with 2,778 AI researchers, suggests a median timeline of 2047 for high-level machine intelligence, which aligns with AGI in some definitions. However, community predictions on Metaculus estimate it could be…
The Screen is a container for your widgets. These screens occupy the dimensions of your terminal by default. While you can have many different screens in a single application, only one screen may be active at a time. When you create your App class, Textual will create a screen object implicitly. Yes, Textual requires you to have at least one screen or your application won’t work. If you do not create a new screen or switch to a different one, the default screen is where your widgets will get mounted or composed to. Screens are a great way to organize your application. Many…
We have an exciting opportunity for a full-time, permanent Full Stack Web Developer to join our software development team. This role can either be office-based or home-based, with a requirement to travel to one of our offices in Telford or Nottingham as needed. The Role In this role, you will work on customer-facing websites, e-commerce stores, and internal applications/services. Some of the technologies we use include Laravel, React, InertiaJS, Typescript, FilamentPHP, MySQL, JIRA, Tailwind, Pulumi, Shopify, and Docker. If you have experience with any of these, this could be the job for you. The successful candidate will be responsible for:…
About you As a member of our team, we want you to: Get involved with your teammates’ projects. Create exciting new websites and bring your thoughts and experience to the table. Work intelligently – using industry standard libraries and frameworks to speed up development, then writing bespoke code for the problems no one else has solved. Have time to play around and improve your skills – you’ll be given training materials and time to expand your skillset. Go home on time – our working hours are 9-6 (9-5 on in-office days) with an hour lunch (flexi-time available), and we’re strict…
Today marks the launch of our first free CSS tool here at css3. Imagine you’re strolling through a digital art gallery website, and a mesmerizing sunset in one of the pictures catches your eye. You think, “Wow, those colors would make my website look stunning!” Well, with our Image Color Picker Tool, your wish is its command! 📸 Snap and Extract: Simply upload your favorite image, and watch as Image Color Picker tool works its magic. It’s like having a color-savvy fairy godmother for your website. With a flick of its digital wand, it extracts a palette of colors, providing…