Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@
"docs:build": "vuepress build src",
"docs:clean-dev": "vuepress dev src --clean-cache",
"docs:dev": "vuepress dev src",
"docs:gen": "ts-node scripts/generate.ts",
"docs:release": "node --loader ts-node/esm scripts/release.ts && vuepress build src"
"docs:gen": "ts-node scripts/generate.ts"
},
"devDependencies": {
"@faker-js/faker": "7.6.0",
Expand All @@ -27,5 +26,6 @@
"vuepress-plugin-redirect": "2.0.0-beta.221",
"vuepress-theme-hope": "2.0.0-beta.221",
"vuepress-vite": "2.0.0-beta.62"
}
},
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
}
72 changes: 0 additions & 72 deletions scripts/release.ts

This file was deleted.

2 changes: 1 addition & 1 deletion src/.vuepress/navbar/en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@ import { navbar } from "vuepress-theme-hope";

export const enNavbar = navbar([
"/",
{ text: "Docs", icon: "explore", link: "/docs/master/" },
{ text: "Docs", icon: "explore", link: "/docs/" },
{ text: "Blog", icon: "article-fill", link: "/blog/" },
]);
93 changes: 78 additions & 15 deletions src/.vuepress/sidebar/en.ts
Original file line number Diff line number Diff line change
@@ -1,16 +1,79 @@
import fs from 'fs';
import { sidebar, SidebarItem } from "vuepress-theme-hope";
import { sidebar } from "vuepress-theme-hope";

var sidebars = {}

const versions = fs.readdirSync('src/docs/', { withFileTypes: true })
.filter((item) => item.isDirectory())
.map((item) => item.name);
for (const version of versions) {
if (fs.existsSync(`src/docs/${version}/sidebar.json`)) {
const text = fs.readFileSync(`src/docs/${version}/sidebar.json`, 'utf-8');
sidebars[`/docs/${version}/`] = JSON.parse(text) as SidebarItem;
}
}

export const enSidebar = sidebar(sidebars);
export const enSidebar = sidebar({
"/docs/": [
{
"text": "Quick Start",
"icon": "launch",
"link": "quick-start"
},
{
"text": "Deploy",
"icon": "start",
"collapsible": true,
"prefix": "deploy/",
"children": [
"binary",
"docker",
"kubernetes"
]
},
{
"text": "Configuration",
"icon": "config_s",
"link": "config"
},
{
"text": "Concepts",
"icon": "idea",
"collapsible": true,
"prefix": "concepts/",
"children": [
"data-objects",
"algorithms",
"non-personalized",
"item-to-item",
"external",
"how-it-works",
"evaluation"
]
},
{
"text": "API",
"icon": "api",
"collapsible": true,
"prefix": "api/",
"children": [
"restful-api",
"go-sdk",
"python-sdk",
"typescript-sdk",
"java-sdk",
"rust-sdk",
"php-sdk",
"ruby-sdk",
"dotnet-sdk"
]
},
{
"text": "Gorse Dashboard",
"icon": "dashboard",
"link": "gorse-dashboard"
},
{
"text": "Benchmark",
"icon": "dashboard-fill",
"link": "benchmark/"
},
{
"text": "Contribution Guide",
"icon": "pullrequest",
"link": "contribution-guide/"
},
{
"text": "FAQ",
"icon": "faq",
"link": "faq/"
}
]
});
89 changes: 75 additions & 14 deletions src/.vuepress/sidebar/zh.ts
Original file line number Diff line number Diff line change
@@ -1,16 +1,77 @@
import fs from 'fs';
import { sidebar, SidebarItem } from "vuepress-theme-hope";
import { sidebar } from "vuepress-theme-hope";

var sidebars = {}

const versions = fs.readdirSync('src/zh/docs/', { withFileTypes: true })
.filter((item) => item.isDirectory())
.map((item) => item.name);
for (const version of versions) {
if (fs.existsSync(`src/zh/docs/${version}/sidebar.json`)) {
const text = fs.readFileSync(`src/zh/docs/${version}/sidebar.json`, 'utf-8');
sidebars[`/zh/docs/${version}/`] = JSON.parse(text) as SidebarItem;
}
}

export const zhSidebar = sidebar(sidebars);
export const zhSidebar = sidebar({
"/zh/docs/": [
{
"text": "快速上手",
"icon": "launch",
"link": "quick-start"
},
{
"text": "部署",
"icon": "start",
"collapsible": true,
"prefix": "deploy/",
"children": [
"binary",
"docker",
"kubernetes"
]
},
{
"text": "配置项",
"icon": "config_s",
"link": "config"
},
{
"text": "概念详解",
"icon": "idea",
"collapsible": true,
"prefix": "concepts/",
"children": [
"data-objects",
"algorithms",
"how-it-works",
"evaluation"
]
},
{
"text": "接口文档",
"icon": "api",
"prefix": "api/",
"collapsible": true,
"children": [
"restful-api",
"go-sdk",
"python-sdk",
"typescript-sdk",
"java-sdk",
"rust-sdk",
"php-sdk",
"ruby-sdk",
"dotnet-sdk"
]
},
{
"text": "Gorse 控制台",
"icon": "dashboard",
"link": "gorse-dashboard"
},
{
"text": "性能对比",
"icon": "dashboard-fill",
"link": "benchmark/"
},
{
"text": "贡献指南",
"icon": "pullrequest",
"link": "contribution-guide/"
},
{
"text": "常见问题",
"icon": "faq",
"link": "faq/"
}
]
});
2 changes: 1 addition & 1 deletion src/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ heroText: Gorse
tagline: An open-source recommender system service written in Go.
actions:
- text: Documentation
link: /docs/master/
link: /docs/
type: primary

- text: Live Demo
Expand Down
2 changes: 0 additions & 2 deletions src/docs/.gitignore

This file was deleted.

46 changes: 46 additions & 0 deletions src/docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
title: Documentation
icon: explore
---

Welcome to the official documents for the Gorse recommender system.

## Table of Contents

- [Quick Start](quick-start.md)
- Deploy
- [Binary Deployment](deploy/binary.md)
- [Docker Deployment](deploy/docker.md)
- [Kubernetes Deployment](deploy/kubernetes.md)
- [Configuration](config.md)
- Concepts
- [Data Objects](concepts/data-objects.md)
- [Algorithms](concepts/algorithms.md)
- [Non-personalized Recommenders](concepts/non-personalized.md)
- [Item-to-Item Recommenders](concepts/item-to-item.md)
- [External Recommenders](concepts/external.md)
- [How It Works](concepts/how-it-works.md)
- [Evaluation](concepts/evaluation.md)
- API
- [RESTful API](api/restful-api.md)
- [Go SDK](api/go-sdk.md)
- [Python SDK](api/python-sdk.md)
- [TypeScript SDK](api/typescript-sdk.md)
- [Java SDK](api/java-sdk.md)
- [Rust SDK](api/rust-sdk.md)
- [PHP SDK](api/php-sdk.md)
- [Ruby SDK](api/ruby-sdk.md)
- [.NET SDK](api/dotnet-sdk.md)
- [Gorse Dashboard](gorse-dashboard.md)
- [Benchmark](benchmark.md)
- [Contribution Guide](contribution-guide.md)
- [FAQ](faq.md)

## Contributing Guide

You can start from any one of the following items to help improve Gorse documents:

- Fix typos or format (punctuation, space, indentation, code block, etc.)
- Fix or update inappropriate or outdated descriptions
- Add missing content (sentence, paragraph, or a new document)
- [Translate docs changes from English to Chinese](https://gitlocalize.com/repo/8172/zh?utm_source=badge)
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ item_ttl = 0

Multi-categories recommendations are common, take YouTube for example, where multiple recommendation categories are provided on the homepage.

![](../../../img/youtube-topics.png)
![](../../img/youtube-topics.png)

Multiple categories can be distinguished by topics such as food, travel, etc., or by forms, e.g. live, short and long videos. Items will appear in the global recommendation stream, and in addition, the `Categories`` field determines which recommendation categories the items should appear in. For each recommendation API, there are a global version and a categorized version:

Expand All @@ -80,7 +80,7 @@ Multiple categories can be distinguished by topics such as food, travel, etc., o

For example, for a live badminton match, you can set its `Categories` to "Live" and "Sports". In this way, in addition to the default recommendation stream, the user can find the live stream in the "Live" and "Sports" recommendation categories.

![](../../../img/youtube-live.png)
![](../../img/youtube-live.png)

::: warning

Expand Down Expand Up @@ -169,8 +169,8 @@ Positive feedback can be inserted into the recommender system when the user take

::: center

![](../../../img/tiktok.jpg =300x)
![](../../../img/youtube-mobile.jpg =300x)
![](../../img/tiktok.jpg =300x)
![](../../img/youtube-mobile.jpg =300x)

:::

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ where $R^r_u$ is the set of read feedback from user $u$, and $R^p_U$ is the set

For example, there are two positive feedback types (like and star) in [GitRec](https://gitrec.gorse.io/#/). Thus, the like rate and star rate are shown on the overview page of the dashboard.

![](../../../img/dashboard-overview.png)
![](../../img/dashboard-overview.png)

## Offline Evaluation

Expand Down Expand Up @@ -73,8 +73,8 @@ $$

The recalls of indices are listed in the "System Status" section of the dashboard homepage.

![](../../../img/evaluation-neighbor-index-recall.jpeg =400x)
![](../../../img/evaluation-mf-index-recall.jpeg =400x)
![](../../img/evaluation-neighbor-index-recall.jpeg =400x)
![](../../img/evaluation-mf-index-recall.jpeg =400x)

If the recall of an index is extremely low, consider turning off the index.

Expand Down
File renamed without changes.
Loading