Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main'
Browse files Browse the repository at this point in the history
  • Loading branch information
Layoric committed Apr 3, 2024
2 parents ecbf943 + 77fbe69 commit 46f49e2
Show file tree
Hide file tree
Showing 7 changed files with 207 additions and 566 deletions.
19 changes: 10 additions & 9 deletions MyApp.ServiceInterface/Data/AppConfig.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
using System.Collections.Concurrent;
using System.Data;
using Microsoft.EntityFrameworkCore.Metadata.Internal;
using MyApp.ServiceModel;
using ServiceStack.OrmLite;

Expand All @@ -27,10 +26,11 @@ public static (string Model, int Questions)[] ModelsForQuestions =
("gemma", 3),
("mixtral", 5),
("gemini-pro", 10),
("deepseek-coder:33b", 25),
("claude-3-sonnet-20240229", 50),
("gpt-4-turbo-preview", 75),
("claude-3-opus-20240229", 100),
("claude-3-haiku", 25),
("deepseek-coder:33b", 50),
("claude-3-sonnet", 75),
("gpt-4-turbo", 100),
("claude-3-opus", 200),
#else
("phi", 0),
("gemma:2b", 0),
Expand All @@ -41,10 +41,11 @@ public static (string Model, int Questions)[] ModelsForQuestions =
("gemma", 3),
("mixtral", 5),
// ("gemini-pro", 10),
// ("deepseek-coder:33b", 25),
// ("claude-3-sonnet-20240229", 50),
// ("gpt-4-turbo-preview", 75),
// ("claude-3-opus-20240229", 100),
// ("claude-3-haiku", 25),
// ("deepseek-coder:33b", 50),
// ("claude-3-sonnet", 75),
// ("gpt-4-turbo", 100),
// ("claude-3-opus", 200),
#endif
];

Expand Down
103 changes: 86 additions & 17 deletions MyApp/_pages/about.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,89 @@
---
title: About this Blazor App
title: About pvq
---

## .NET 8 Blazor App Templates

ServiceStack's new .NET 8 Blazor templates enhances the default ASP.NET Blazor App templates with several modern, high-productivity features, including:

- [Vue.js](https://vuejs.org) - Enhance your statically rendered Blazor Apps with Vue.js for all your interactive UIs
- [Tailwind CSS](https://tailwindcss.com) - Style your Blazor Apps with the modern popular utility-first CSS framework for creating beautiful, maintainable responsive UIs with DarkMode support
- [ServiceStack Vue Components](https://blazor-gallery.jamstacks.net) - Rapidly develop beautiful Blazor Apps integrated with Rich high-productivity UI Tailwind Components like [AutoQueryGrid](https://docs.servicestack.net/vue/autoquerygrid) and [AutoForms](https://docs.servicestack.net/vue/autoform)
- [ServiceStack.Blazor Components](https://blazor-gallery.jamstacks.net) - Utilize ServiceStack.Blazor's beautiful Tailwind Components in your statically rendered Blazor Apps
- [ASP .NET Identity Auth](https://learn.microsoft.com/en-us/aspnet/core/blazor/security/) - Use the same ASP .NET Identity Auth used in ASP.NET's .NET 8 Blazor Apps, with all Identity Pages upgraded with beautiful Tailwind CSS styling
- [Entity Framework](https://learn.microsoft.com/ef/) & [OrmLite](https://docs.servicestack.net/ormlite/) - Choose the Best ORM to build each App feature, with a unified solution that sees [OrmLite's Code-First DB Migrations](https://docs.servicestack.net/ormlite/db-migrations) run both EF and OrmLite migrations, inc. Seed Data with a single command at Development or Deployment
- [AutoQuery](https://docs.servicestack.net/autoquery/) - Rapidly developing data-driven APIs, UIs and CRUD Apps
- [Auto Admin Pages](https://youtu.be/wlRA4_owEsc) - Quickly develop your back-office CRUD Admin UIs to manage your App's Database tables at [/admin](/admin)
- [Markdown](https://docs.servicestack.net/razor-press/syntax) - Maintain SEO-friendly documentation and content-rich pages like this one with just Markdown, beautifully styled with [@tailwindcss/typography](https://tailwindcss.com/docs/typography-plugin)
- [Built-in UIs](https://servicestack.net/auto-ui) - Use ServiceStack's Auto UIs to [Explore your APIs](https://docs.servicestack.net/api-explorer) at [/ui](/ui/)
or Query your [App's Database Tables](https://docs.servicestack.net/admin-ui-database) at [/admin-ui/database](/admin-ui/database)
- [Built-in Docker Deployments](/deploy) - Use the built-in GitHub Actions to effortlessly deploy .NET 8 containerized Blazor Apps with Docker and GitHub Registry via SSH to any Linux Server
## Getting Help in the Age of LLMs

Like most developers we're captivated by the amazing things large language models are capable of and the potential they
have to transform the way we interact with and use technology. One of the areas they can be immediately beneficial with
is in getting help in learning how to accomplish a task or solving a particular issue.

Previously we would need to seek out answers by scanning the Internet, reading through documentation and blogs to find
out answers for ourselves. Forums and particularly Stack Overflow have been a great resource for developers in being able
to get help from other developers who have faced similar issues. But the timeliness and quality of the responses can vary
based on the popularity of the question and the expertise of the person answering. Answers may also not be 100% relevant
to our specific situation, potentially requiring reading through multiple answers from multiple questions to get the help
we want.

But now, with the advent of large language models, we can get help in a more natural way by simply asking a question in
plain English and getting an immediate response that is tailored to our specific needs.

## Person vs Question

[pvq.app](https://pvq.app) is our attempt at providing a useful platform for other developers in this new age by enlisting
the help of large language models to provide immediate and relevant answers to your questions. But instead of just using
a single LLM to provide answers, we're using multiple models to provide different perspectives on the same question that
we'll use to analyze the strengths of different LLMs at answering different types of questions.

## Initial Base Line

For our initial dataset we're starting with the top 100k questions from StackOverflow and running them through a number
of quality Open LLMs that we've found to perform great for answering programming questions:

- [Phi-2](https://www.microsoft.com/en-us/research/blog/phi-2-the-surprising-power-of-small-language-models/) (2.7B) by Microsoft
- [Gemma 2B](https://ai.google.dev/gemma) (2B) by Google
- [Qwen 1.5](https://github.com/QwenLM/Qwen1.5) (4B) by Qwen Team
- [DeepSeek Coder 6.7B](https://github.com/QwenLM/Qwen1.5) (6.7B) by DeepSeek AI
- [Code Llama2 7B](https://llama.meta.com/llama2/) (7B) by Meta
- [Gemma 7B](https://ai.google.dev/gemma) (7B) by Google
- [Mistral 7B](https://mistral.ai/news/announcing-mistral-7b/) (7B) by Mistral AI
- [Mixtral 8x7B](https://mistral.ai/news/mixtral-of-experts/) (8x7B) by Mistral AI
- [DeepSeek Coder 33B](https://deepseekcoder.github.io/) (33B) by DeepSeek AI

Our initial pass will be to see how well each of these models perform on the StackOverflow dataset which we'll keep track
of and publish on our [Leaderboard](/leaderboard) page which we're also comparing against the highest voted and
accepted answers on StackOverflow to see how well they measure up against the best human answers.

## Future Work

After establishing the initial base line we'll look towards evaluating different strategies and specialized models to
see if we're able to improve the quality of answers that can be provided.

## New Questions

For new questions asked we'll also include access to the best performing proprietary models to active users as they
[ask more questions](/questions/ask), including:

- [Claude 3 Haiku](https://www.anthropic.com/news/claude-3-haiku) by Anthropic
- [Gemini Pro](https://blog.google/technology/ai/google-gemini-ai/) by Google
- [Claude 3 Sonnet](https://www.anthropic.com/news/claude-3-family) by Anthropic
- [GPT 4 Turbo](https://platform.openai.com/docs/models/gpt-4-and-gpt-4-turbo) by OpenAI
- [Claude 3 Opus](https://www.anthropic.com/claude) by Anthropic

## Open Questions and Answers for all

All questions, answers and comments is publicly available for everyone to freely use under the same
[CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/) license used by StackOverflow.

## Help us improve Answers

You can help us improve the quality of answers by providing any kind of feedback including asking new questions,
up voting good answers and down voting bad ones, correcting answers with inaccuracies or leaving comments suggesting
improvements or adding additional context and clarifications to answers. Our most active users who help curate and improve
the quality of questions and answers will have the opportunity to become moderators where they'll have access to
all our models.

We also welcome attempts to beat the large language models by providing your own answers to questions. We'll rank
new answers and include votes they receive from the community to determine the best answers.

We'll use this feedback to update our leaderboard and improve the quality of answers provided.

## Feedback ❤️

We're still in the very early stages of development and would love to hear your feedback on how we can improve pvq.app
to become a better platform for answering technical questions. You can provide feedback in our
[GitHub Discussions](https://github.com/ServiceStack/pvq/discussions):

- [Feature Requests](https://github.com/ServiceStack/pvq/discussions/categories/ideas)
- [Report Issues](https://github.com/ServiceStack/pvq/issues)
- [General Feedback](https://github.com/ServiceStack/pvq/discussions)
Loading

0 comments on commit 46f49e2

Please sign in to comment.