Sentence Similarity
sentence-transformers
ONNX
Safetensors
Transformers.js
English
bert
feature-extraction
recommendation
video-games
steam
text-embeddings-inference
Instructions to use GulkoA/gamespace.1 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- sentence-transformers
How to use GulkoA/gamespace.1 with sentence-transformers:
from sentence_transformers import SentenceTransformer model = SentenceTransformer("GulkoA/gamespace.1") sentences = [ "That is a happy person", "That is a happy dog", "That is a very happy person", "Today is a sunny day" ] embeddings = model.encode(sentences) similarities = model.similarity(embeddings, embeddings) print(similarities.shape) # [4, 4] - Transformers.js
How to use GulkoA/gamespace.1 with Transformers.js:
// npm i @huggingface/transformers import { pipeline } from '@huggingface/transformers'; // Allocate pipeline const pipe = await pipeline('feature-extraction', 'GulkoA/gamespace.1'); - Notebooks
- Google Colab
- Kaggle
Download docs.py from GulkoA/gamespace.1: direct link, hf CLI and curl.
- Browser
- Download file 1.67 kB
-
https://huggingface.co/GulkoA/gamespace.1/resolve/main/docs.py
- Command line
-
hf download hf://GulkoA/gamespace.1/docs.py
-
curl -L -o docs.py https://huggingface.co/GulkoA/gamespace.1/resolve/main/docs.py
1.67 kB
| """Turn a catalog row into the text document the embedding model reads.""" | |
| import numpy as np | |
| KEEP_CATEGORIES = { | |
| "Single-player", "Multi-player", "Co-op", "Online Co-op", "LAN Co-op", "Shared/Split Screen Co-op", | |
| "PvP", "Online PvP", "Shared/Split Screen PvP", "MMO", "VR Support", "VR Only", "Cross-Platform Multiplayer", | |
| } | |
| def build_doc(row, rng: np.random.Generator | None = None, drop_tags: bool = False, max_tags: int = 15) -> str: | |
| """Deterministic when rng is None. With rng, returns a randomly degraded view for contrastive training.""" | |
| aug = rng is not None | |
| tags = list(row["tags"])[:max_tags] | |
| if drop_tags or (aug and rng.random() < 0.5): | |
| tags = [] | |
| elif aug and tags: | |
| keep = rng.random(len(tags)) >= 0.3 | |
| tags = [t for t, k in zip(tags, keep) if k] | |
| genres = list(row["genres"]) | |
| cats = [c for c in row["categories"] if c in KEEP_CATEGORIES][:5] | |
| desc = (row["short"] + " " + row["about"]).strip() | |
| if aug and desc: | |
| if rng.random() < 0.3 and (tags or genres): | |
| desc = "" | |
| else: | |
| words = desc.split() | |
| cut = int(len(words) * rng.uniform(0.3, 1.0)) if len(words) > 20 else len(words) | |
| desc = " ".join(words[:cut]) | |
| parts = [row["name"] + "."] | |
| if genres: | |
| parts.append("Genres: " + ", ".join(genres) + ".") | |
| if tags: | |
| parts.append("Tags: " + ", ".join(tags) + ".") | |
| if cats: | |
| parts.append("Modes: " + ", ".join(cats) + ".") | |
| if len(row["developers"]): | |
| parts.append("Developer: " + ", ".join(list(row["developers"])[:2]) + ".") | |
| if desc: | |
| parts.append(desc) | |
| return " ".join(parts) | |