Tag Archives: AI

DigiMo: talk to my online avatar

After having built so many AI applications I finally set down to showcase my skills and toolbox in the shape of an online AI assistant: maurice.instrukt.ai. I started out by giving it a calendar tool (in my n8n backend), so that one can book a meeting with myself to talk about all things AI. I then built a knowledge base with info about my journey as a developer, and also gave it access to my WordPress blogs, so that it can share the topics I am interested in and write about. Go ahead and ask what I wrote about AI! (It should mention this exact blog post 😉

You might notice how the models that are used in the workflows sometimes make decisions that are not optimal, but that is the state of current affairs. I just moved away from using Claude’s api as it was going haywire and not doing as I instructed, so I reverted to OpenAI’s gpt-4o-mini. We are only weeks away from being able to use o3-mini, which has already surpassed most humans in intelligence. Imagine being helped by such intelligent assistants!

Bonus for me is that I had to look at my online stuff and clean it all up. I got rid of a lot of useless tags and archived a lot of my posts 🙂

My AI dev journey towards no code with n8n

Over the last few years, I’ve spent a lot of time researching AI and building projects with it. I began by coding projects by hand, sometimes with AI’s assistance, to prototype ideas and understand the ins and outs of working with AI. As an architecture purist, I quickly fell in love with LangChain, even though it was barely usable and manageable in its early days. I encountered countless problems, tried many workarounds, and learned valuable lessons. Now, I feel confident saying: I know what to build with AI and how to do it. But along the way, something changed in me that I never expected.

I’ve always relied on code editors and their powerful plugins to build my solutions. This approach worked well for years. However, when AI entered the picture, I found myself coding brittle solutions too slowly—even with AI as a development tool. Realizing the need to iterate faster, I started exploring no-code platforms that could support me in the long run. As an old-school developer with over 30 years of experience, I didn’t anticipate the transformative value n8n would bring to my workflow.

With n8n, I can rapidly assemble automation workflows that incorporate AI agents with clearly defined and limited scopes of operation. This capability has put me on an entirely new path.

Advantages of n8n

The benefits of using n8n are clear:

  1. Speed of Development: I can iterate and deploy solutions far more quickly than before.
  2. Easy Sharing: Developers can build and share solutions effortlessly. Rich workflows are often just a copy-paste away, ready to adapt and integrate into new projects.
  3. Simplified Understanding: While open-source Git repositories provide reusable code, such code is often scattered across multiple files. This makes understanding and integration much more complex and error-prone. With n8n, workflows are visual, providing a clear view of how they operate throughout their lifecycle. Whether you’re a hardcore developer or a savvy newcomer, the visual nature of workflows simplifies the process.

This shift has brought joy to my daily work. I can effortlessly add new tools to my AI agents in no time. While I still code frontends, having n8n as a backend accelerates my iterations to the point where I’d recommend it to anyone.

Limitations and Feature Requests

Of course, n8n isn’t without its limitations. For instance:

  • Streaming Responses: It doesn’t yet support streaming responses.
  • Simplified RAG Solutions: The current Retrieval-Augmented Generation (RAG) implementation lacks metadata output, which is frustrating.

I hope these issues will be resolved soon as the n8n team grows and can implement feature requests more quickly. To contribute to this growth, here’s my own list of outstanding requests that I believe would add immense value:

  • AOP-Style Hooks: Enable calling HTTP endpoints before and after a tool’s execution, or introduce an n8n event node to create listeners that translate n8n events into custom actions. For example, this could support notification systems.
  • Failover LLM: Retry failed operations with another LLM provider to enhance reliability.
  • Conditional AI Agent Tools: Allow tools to be bypassed based on conditions. This would reduce noise and streamline the logic for LLMs to act upon.

Final Thoughts

n8n has fundamentally changed the way I approach backend development. Its visual workflows, ease of sharing, and speed of iteration have made it a game-changer in my AI projects. While there are some areas for improvement, the potential of this platform is enormous, and I’m excited to see how it evolves. Let’s support the team and help them implement these critical features faster!

itsUP: lean, automated, poor man’s infra

Now that I am working on my personal AI assistant I figured it would be nice to mention one of my better projects here: itsUP. It deserves attention as it is a fully automated always up docker compose solution with Traefik, and it runs ALL of my apps and services on one Raspberry Pi 5 at home (with 500GB ssd attached). It might be a bit over engineered, and its approach not your flavor, but I am happy with it. I just edit one yaml file, build artifacts, test and deploy, and there we go! Heck, it even accepts web hooks so that your repos can instrukt it to roll up your new containers. Such a breeze 🙂

Oh, and did I mention that I also made an api so that my itsUP agent can talk to it? I can ask it everything and tell it to update configuration or even add a new service!

Use Indy News Assistant to get to the TRUTH

Use Indy News Assistant to get to the TRUTH

After noticing the recent increase in (self)censorship by mainstream media I created the “Indy News Assistant” (a custom ChatGPT agent). It takes any topic and provides both news sources as well as latest YouTube videos published on the matter.

Here’s the link: indy-news-assistant

To make it easy for those without a ChatGPT subscription here is a public Streamlit app using the same api: indy-news.streamlit.app

It uses vectors and bm25 to make search work, and I think it is an interesting and cheap approach. Unfortunately vector searches, like LLMs, suffer from producing irrelevant output, and so this comes with a YMMV warning 😉

Source: github.com/morriz/indy-news