Skip to content

Commit a59c049

Browse files
committed
Add CONTRIBUTING.md file with guidelines for contributing to FastEmbed
1 parent 6a94994 commit a59c049

File tree

1 file changed

+57
-0
lines changed

1 file changed

+57
-0
lines changed

Diff for: CONTRIBUTING.md

+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# Contributing to FastEmbed!
2+
3+
:+1::tada: First off, thanks for taking the time to contribute! :tada::+1:
4+
5+
The following is a set of guidelines for contributing to FastEmbed. These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.
6+
7+
## Table Of Contents
8+
9+
[I don't want to read this whole thing, I just have a question!!!](#i-dont-want-to-read-this-whole-thing-i-just-have-a-question)
10+
11+
[How Can I Contribute?](#how-can-i-contribute)
12+
* [Your First Code Contribution](#your-first-code-contribution)
13+
* [Adding New Models](#adding-new-models)
14+
15+
[Styleguides](#styleguides)
16+
* [Code Lint](#code-lint)
17+
18+
## I don't want to read this whole thing I just have a question!!!
19+
20+
> **Note:** Please don't file an issue to ask a question. You'll get faster results by using the resources below:
21+
22+
* [FastEmbed Docs](https://qdrant.github.io/fastembed/)
23+
* [Qdrant Discord](https://discord.gg/Qy6HCJK9Dc)
24+
25+
## How Can I Contribute?
26+
27+
## How Do I Submit A (Good) Bug Report?
28+
29+
Bugs are tracked as [GitHub issues](https://guides.github.com/features/issues/).
30+
31+
Explain the problem and include additional details to help maintainers reproduce the problem:
32+
33+
* **Use a clear and descriptive title** for the issue to identify the problem.
34+
* **Describe the exact steps which reproduce the problem** in as many details as possible. For example, start by explaining how you are using FastEmbed, e.g. with Langchain, Qdrant Client, Llama Index and which command exactly you used. When listing steps, **don't just say what you did, but explain how you did it**.
35+
* **Provide specific examples to demonstrate the steps**. Include links to files or GitHub projects, or copy/pasteable snippets, which you use in those examples. If you're providing snippets in the issue, use [Markdown code blocks](https://help.github.com/articles/markdown-basics/#multiple-lines).
36+
* **Describe the behavior you observed after following the steps** and point out what exactly is the problem with that behavior.
37+
* **Explain which behavior you expected to see instead and why.**
38+
* **If the problem is related to performance or memory**, include a [call stack profile capture](https://github.com/joerick/pyinstrument) and your observations.
39+
40+
Include details about your configuration and environment:
41+
42+
* **Which version of FastEmbed are you using?** You can get the exact version by running `python -c "import fastembed; print(fastembed.__version__)"`.
43+
* **What's the name and version of the OS you're using**?
44+
* **Which packages do you have installed?** You can get that list by running `pip freeze`
45+
46+
### Your First Code Contribution
47+
48+
Unsure where to begin contributing to FastEmbed? You can start by looking through these `good-first-issue`issues:
49+
50+
* [Good First Issue](https://github.com/qdrant/fastembed/labels/good%20first%20issue) - issues which should only require a few lines of code, and a test or two. These are a great way to get started with FastEmbed. This includes adding new models which are already tested and ready on Huggingface Hub.
51+
52+
## Pull Requests
53+
54+
The best way to learn about the mechanics of FastEmbed is to start working on it.
55+
56+
### Beginners
57+
You can start by adding new models to the FastEmbed. There are quite a few pull requests that were merged for this purpose and you can use them as a reference. You can find all the model requests [here](https://github.com/qdrant/fastembed/labels/model%20request).

0 commit comments

Comments
 (0)