HN user

tillvz

20 karma

Co-Founder & COO - Veezoo (https://veezoo.com) - till@veezoo.com

Posts3
Comments29
View on HN

Does the Knowledge Graph have to index all those values for the mapping to work?

There are both options. You can index them as entities [1] within Veezoo and keep the mapping automatically synchronized with the database. Or decide to not index them, which will make Veezoo e.g. attempt answering the question using string search in SQL.

On the adaptive plans, Is that execution logic handled entirely by your deterministic compiler, or does it loop back to the LLM to interpret the intermediate results?

The plan is done entirely by the LLM. The VQL steps (i.e. fetching answers from the database) within the plan is where the compiler kicks in.

[1] https://docs.veezoo.com/vkl/kb-layer/entity/

I'm curious how this approach manages cardinality explosion?

The Knowledge Graph explicitly models cardinality and relationships between entities. The compiler uses that to generate SQL that handles it correctly, using e.g. DISTINCT

Also, how do you handle cases where a user asks for data that requires running multiple queries, specifically where each query depends on the results of the previous one?

Veezoo can generate adaptive plans, so it can decide to wait for a database query to return results before continuing

Yes, every SQL query Veezoo runs is logged and visible to admins.

The fundamental artifact is VQL (Veezoo Query Language), which queries against a Knowledge Graph containing your business data model, things like your "Revenue" measure.

A query might look like this:

var order from kb.Order

date_in(order.Order_Date, date("#today"))

var retRevenue = kb.Order.Revenue(order)

select(retRevenue)

If the business decides to change how revenue is computed, the VQL stays valid but compiles to different SQL. At the same time Veezoo can test that with your knowledge graph change that you are not breaking anyones dashboard and even apply evolutions if needed

VQL: https://docs.veezoo.com/vkl/kb-layer/vql/

Evolutions: https://docs.veezoo.com/vkl/evolutions/

The Knowledge Graph itself is version controlled, so the data team can trace every change.

Trust & explainability is the biggest issue here.

We've been building natural language analytics at Veezoo (https://www.veezoo.com/) for 10 years, and what we find is that straight Text-to-SQL doesn't scale. If AI writes SQL directly, you're building on a probabilistic foundation. When a CFO asks for revenue the number can't just be correct 99% of times. Also you can't get the CFO to read SQL to verify.

We're solving that with an abstraction layer (Knowledge Graph) in between. AI translates natural language to a semantic query language, which then compiles to SQL deterministically.

At the same time you can translate the semantic query deterministically back into an explanation for the business user, so they can easily verify if the result matches their intent.

Business logic lives in the Knowledge Graph and the compiler ensures every query adheres to it 100%, every time. No AI is involved in that step.

Veezoo Architecture: https://docs.veezoo.com/veezoo/architecture-overview

Completely agree! A semantic layer is essential for scaling analytics to enterprise complexity.

Another alternative here is Veezoo [0], which combines the semantic layer (a Knowledge Graph) and self-service analytics into one integrated solution.

We built it specifically for the analytics use-case for both the "data persona" to manage the semantic layer, as well as for the "business persona" to analyze the data.

If you’re looking for a semantic-layer + (embedded) BI solution right out of the box. This could be a fit.

0 - https://www.veezoo.com

Having an LLM be in charge of business logic is madness.

There cannot be any AI involved when processing the definition of a KPI. Otherwise you'll never be able to roll it out to thousands of users when there's always a 90% (or even 99%) chance that the business logic might not get applied correctly.

Check out what we do at Veezoo (https://www.veezoo.com) with the Knowledge Graph / Semantic Layer to mitigate that.

Agree that an approach that more semantically models the data is better, especially when you want to eventually let the non-technical users ask questions.

When you're on a higher abstraction level, it also allows you to make clear definitions (e.g. for certain KPIs) and define business logic that always needs to be applied to get the correct results.

There you don't want to leave it up to chance that a filter gets hallucinated in or out when you ask e.g. about your company's revenue.

At Veezoo (https://www.veezoo.com) we have taken the approach that instead of going directly to SQL. So when a user asks a question, Veezoo translates it first into a query against the Knowledge Graph (which represents the business objects, their relationship etc.). From there we compile it into a SQL query depending on the target database (they all have slight differences) without any AI involvement. In this compilation step we also make sure that the business logic is properly applied.

We are following this approach at Veezoo (https://www.veezoo.com).

When Veezoo connects to a database / dwh for the first time, an initial Semantic Layer / Knowledge Graph gets built automatically based on the data itself. We try to recognize how the columns link to other tables, try to identify units, and other semantic information e.g. if something is a "Location" or a "Country" and so on.

The whole conversational "plain english" querying then operates on top of the semantic layer, ensuring business logic (and other governance topics) are always respected.

"So is enterprise conversational BI impossible in 2023? Will there be a few more years of academic papers and company AI hackathon projects before a solution can be deployed in production? We don’t think so." -- from the medium article.

Want to put your attention to https://www.veezoo.com as well. A conversational self-service analytics solution that's been around since 2016 and productively deployed in fortune 500 companies and used by thousands of users daily :)

Congrats on the launch - and also reaching the top of the Spider dataset. We're very familiar with that dataset and its difficulties :)!

Happy to have a chat as well!

https://veezoo.ai

Project Description: We are building a Natural Language based Framework for Intelligent Search & NLQ Analytics for your Software. GPT like - but not GPT based.

What do you want to be tested: What way of integration resonates best with companies. API only, with or without UI / UX components. We still have a bunch of open questions regarding that.

Contact Info: till+embedded@veezoo.com

Currently we don't have such an API exposed. Main reason is the focus on offering a complete self-service analytics solution (i.e. offering next to the NL2SQL also important UI/UX components)

Still we have other ways of integrating it with other systems e.g. exporting to CRMs. Also on the branding side it's possible to have it in the companies corporate identity.

And just let me know if you wanna get a quick tour, happy to show you around :)!

Veezoo AG | Software Developer Backend | Zurich, Switzerland | 100% | Onsite | INTERN or FULL | https://www.veezoo.com

Veezoo is an ETH Zurich Spin-off providing a conversational AI solution to help sales people make data-driven decisions.

Key Responsibilities

- Develop solutions for real world, large-scale problems with renowned customers

- Designing, programming, documenting, testing and refactoring code

- Collaborating with frontend developers, backend developers and other team members

Requirements

- Programming experience in general and with Scala (or Java) in particular

- Solid foundation in computer science, with strong competencies in data structures, algorithms, and software design

- Work experience in Software Engineering

- Interest in working in a very agile and flexible environment

- Proficient in English (and preferably German) in writing and speaking

- Solution-oriented and independent worker

- Valid work permit for Switzerland

Email: join@veezoo.com

Veezoo AG | Software Developer Backend | Zurich, Switzerland | 100% | Onsite | INTERN or FULL | https://www.veezoo.com

Veezoo is an ETH Zurich Spin-off providing a conversational AI solution to help sales people make data-driven decisions.

Key Responsibilities

- Develop solutions for real world, large-scale problems with renowned customers

- Designing, programming, documenting, testing and refactoring code

- Collaborating with frontend developers, backend developers and other team members

Requirements

- Programming experience in general and with Scala (or Java) in particular

- Solid foundation in computer science, with strong competencies in data structures, algorithms, and software design

- Work experience in Software Engineering

- Interest in working in a very agile and flexible environment

- Proficient in English (and preferably German) in writing and speaking

- Solution-oriented and independent worker

- Valid work permit for Switzerland

Email: join@veezoo.com

Veezoo AG | Software Developer Backend | Zurich, Switzerland | 80-100% | Onsite | INTERN or FULL | https://www.veezoo.com

Veezoo is an ETH Zurich Spin-off with 10+ employees providing a conversational solution to analyze and visualize data for banks and insurance companies.

Key Responsibilities

- Develop solutions for real world, large-scale problems with renowned customers

- Designing, programming, documenting, testing and refactoring code

- Collaborating with frontend developers, backend developers and other team members

Requirements

- Programming experience in general and with Scala (or Java) in particular

- Solid foundation in computer science, with strong competencies in data structures, algorithms, and software design

- Research or work experience with Artificial Intelligence, Natural Language Processing and database systems (relational and NoSQL)

- Interest in working in a very agile and flexible environment

- Proficient in English in writing and speaking

- Solution-oriented and independent worker

- Valid work permit for Switzerland

Email: join@veezoo.com

Veezoo AG | Software Developer Backend | Zurich, Switzerland | 80-100% | Onsite | INTERN or FULL | https://www.veezoo.com

Veezoo is an ETH Zurich Spin-off with about 10 employees providing a conversational solution to analyze and visualize data for banks and insurance companies.

Key Responsibilities

- Develop solutions for real world, large-scale problems with renowned customers

- Designing, programming, documenting, testing and refactoring code

- Collaborating with frontend developers, backend developers and other team members

Requirements

- Programming experience in general and with Scala (or Java) in particular

- Solid foundation in computer science, with strong competencies in data structures, algorithms, and software design

- Research or work experience with Artificial Intelligence, Natural Language Processing and database systems (relational and NoSQL)

- Interest in working in a very agile and flexible environment

- Proficient in English in writing and speaking

- Solution-oriented and independent worker

- Valid work permit for Switzerland

Veezoo AG | Software Developer Backend | Zurich, Switzerland | 80-100% | Onsite | INTERN or FULL | https://www.veezoo.com

Veezoo is an ETH Zurich Spin-off with about 10 employees providing a conversational solution to analyze and visualize data for banks and insurance companies.

Key Responsibilities

- Develop solutions for real world, large-scale problems with renowned customers

- Designing, programming, documenting, testing and refactoring code

- Collaborating with frontend developers, backend developers and other team members

Requirements

- Programming experience in general and with Scala (or Java) in particular

- Solid foundation in computer science, with strong competencies in data structures, algorithms, and software design

- Research or work experience with Artificial Intelligence, Natural Language Processing and database systems (relational and NoSQL)

- Interest in working in a very agile and flexible environment

- Proficient in English in writing and speaking

- Solution-oriented and independent worker

- Valid work permit for Switzerland

Email us at join@veezoo.com.

Veezoo AG | Software Developer Backend | Zurich, Switzerland | 80-100% | Onsite | https://www.veezoo.com

Veezoo is an ETH Zurich Spin-off with about 10 employees providing a conversational solution to analyze and visualize data for banks and insurance companies.

Key Responsibilities

- Develop solutions for real world, large-scale problems with renowned customers

- Designing, programming, documenting, testing and refactoring code

- Collaborating with frontend developers, backend developers and other team members

Requirements

- Programming experience in general and with Scala (or Java) in particular

- Solid foundation in computer science, with strong competencies in data structures, algorithms, and software design

- Research or work experience with Artificial Intelligence, Natural Language Processing and database systems (relational and NoSQL)

- Interest in working in a very agile and flexible environment

- Proficient in English in writing and speaking

- Solution-oriented and independent worker

- Valid work permit for Switzerland

Email us at join@veezoo.com.

Veezoo AG | Software Developer Backend | Zurich, Switzerland | 80-100% | Onsite | https://www.veezoo.com

Everybody talks about data! All companies have it, but most of them don't use it properly. The problem is that most people inside companies don't have the time or skills to find the insights hidden in the data. What if you could join us in our mission to create the company brain ​- a brain that is able to answer the questions of everyone in the company using information contained in their own data? Veezoo combines state-of-the-art technologies in Natural Language Processing, Big Data and Machine Learning to create the ultimate human-information interface that will help thousands of companies make better decisions.

Key Responsibilities

- Develop solutions for real world, large-scale problems with renowned customers

- Designing, programming, documenting, testing and refactoring code

- Collaborating with frontend developers, backend developers and other team members

Requirements

- Programming experience in general and with Scala (or Java) in particular

- Solid foundation in computer science, with strong competencies in data structures, algorithms, and software design

- Research or work experience with Artificial Intelligence, Natural Language Processing and database systems (relational and NoSQL)

- Interest in working in a very agile and flexible environment

- Proficient in English in writing and speaking

- Solution-oriented and independent worker

- Valid work permit for Switzerland

Email us at join@veezoo.com.

veezoo.com | Frontend Engineer | Zurich, Switzerland | Full-time, Onsite | https://www.veezoo.com

Everybody talks about data! All companies have it, but most of them don't use it properly. The problem is that most people inside companies don't have the time or skills to find the insights hidden in the data. What if you could join us in our mission to create the company brain ​- a brain that is able to answer the questions of everyone in the company using information contained in their own data? Veezoo combines state-of-the-art technologies in Natural Language Processing, Big Data and Machine Learning to create the ultimate human-information interface that will help thousands of companies make better decisions.

What we are looking for:

* React / Redux / JavaScript / HTML5 / CSS3

* Good sense of design with a perfectionist mindset.

* Valid work permit for Switzerland

Email us at join@veezoo.com. More details at: https://www.veezoo.com/front-end-web-developer/