Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create flat and sequential docs structure #1168

Merged
merged 1 commit into from
Nov 5, 2023

Conversation

blythed
Copy link
Collaborator

@blythed blythed commented Oct 26, 2023

This PR aims to reboot the documentation:

  • Add details about SQL
  • Add more details about power-user/ production features
  • ....

@codecov-commenter
Copy link

codecov-commenter commented Nov 1, 2023

Codecov Report

Attention: 48 lines in your changes are missing coverage. Please review.

Comparison is base (34830a7) 80.33% compared to head (7c201ce) 80.43%.
Report is 9 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1168      +/-   ##
==========================================
+ Coverage   80.33%   80.43%   +0.09%     
==========================================
  Files          95       97       +2     
  Lines        6602     6684      +82     
==========================================
+ Hits         5304     5376      +72     
- Misses       1298     1308      +10     
Files Coverage Δ
superduperdb/base/config.py 100.00% <ø> (ø)
superduperdb/components/model.py 93.66% <100.00%> (+11.00%) ⬆️
superduperdb/ext/openai/model.py 96.09% <ø> (+0.64%) ⬆️
superduperdb/ext/torch/model.py 76.80% <ø> (ø)
superduperdb/misc/superduper.py 76.25% <ø> (ø)
superduperdb/base/build.py 65.85% <66.66%> (-1.65%) ⬇️
superduperdb/base/logger.py 86.95% <80.00%> (-3.05%) ⬇️
superduperdb/cli/serve.py 39.28% <50.00%> (+4.28%) ⬆️
superduperdb/cli/stack.py 55.55% <55.55%> (ø)
superduperdb/components/stack.py 41.53% <41.53%> (ø)

... and 1 file with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@blythed blythed force-pushed the docs/revamp branch 2 times, most recently from 25d496e to a327af8 Compare November 1, 2023 16:33
Copy link
Contributor

@thejumpman2323 thejumpman2323 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Amazing !!

```bash
$ export SUPERDUPERDB_DATA_BACKEND='mongodb://localhost:27018/documents'
$ python -c 'import superduperdb; print(superduperdb.CFG.databackend)'
mongodb://localhost:27018/documents
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. We should add more example of configuration,
    like how to configure vector search

  2. we should also add example of environment variable configuration
    SUPERDUPERDB_ with multi level configuration example cluster.distributed = True


```python
from superduperdb import superduper
db = superduper()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should showcase
db = pymongo.client()

db = superduper(db)


### `db.show`

This methods displays which `Component` instances are registered with the system.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should give link to Components md file ?

)
```

### Vector-search
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This could be a seperate vector search md file?

)
```

### Coming soon: support for raw-sql
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

already merged


m = Pipeline(task='sentiment-analysis')

m.predict(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we have a Listener md file?

```python
from superduperdb import CFG

CFG.artifact_store = 'filesystem://./data'
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What other fields are supported in CFG ?

@fazlulkarimweb
Copy link
Collaborator

I think a glossary.md would be beneficial. It would reduce the size of the documentation in the long run as we don't have to explain every terminology every time. We can just use hyperlinks. From an SEO point of view, it would be great as well! As it is a new technology, a glossary explaining the core vocabulary, like vectors, artifacts, and components, is necessary, in my opinion.

For example: Milvus Glossary , Product FAQ

Copy link
Collaborator

@jieguangzhou jieguangzhou left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. The code in the notebook is old. Some of the new versions of the code no longer work and need to be updated.
  2. I think we missing a real (or fake) use case to deploy SuperDuperDB for production. Not just a notebook. For example, we had a database, how to deploy superduperdb to handle it, maybe command line, or other?
  3. There is a lack of a brief process introduction of superduperdb, what happened after adding the model, what happened after adding the listener, etc. Let users understand the general operating mechanism


- [Applying models](19_apply_models.mdx)
- [Vector search](22_vector_search.mdx)
- [Example Q&A application](/docs/use_cases/items/question_the_docs)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

404

- A [**change-data-capture** service](29_change_data_capture.md)
- A [**vector-search** service](30_vector_comparison_service.md), which finds similar vectors, given an input vector

In the following pages, we describe how to set-up these independent services.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Miss the link or information about the following pages

fields:

```python
s = Schema('my-schema', fields={'my-text': 'str', 'my-image': my_image_encoder})
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we add the context to let users know what this is and how to use it.

)
```

Now when the data is loaded from the database, it is loaded as text:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should explain to the user what's going on here. Because we must assume that users are not familiar with related concepts, such as encoder and decoder in Encoder, and uri->bytes

Copy link
Collaborator

@jieguangzhou jieguangzhou Nov 3, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is recommended to add a custom API wrapper demo here.

api = 'https://xxxxxxx:12345/predict'

class ModelA(Model):
    ......
    def predict(self, x):
        return label
db.add(ModelA(api))

Then users can quickly use superduperdb to test their model services like this

)

db.add(
Stack(
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

import Stack?

@blythed
Copy link
Collaborator Author

blythed commented Nov 3, 2023

  1. The code in the notebook is old. Some of the new versions of the code no longer work and need to be updated.
  2. I think we missing a real (or fake) use case to deploy SuperDuperDB for production. Not just a notebook. For example, we had a database, how to deploy superduperdb to handle it, maybe command line, or other?
  3. There is a lack of a brief process introduction of superduperdb, what happened after adding the model, what happened after adding the listener, etc. Let users understand the general operating mechanism

Hi @jieguangzhou thanks for this in depth feedback. I'm working on adding 1, 3. (I realize the notebooks/ use-cases are out-of-date). For 2. what would you suggest? A mini-code-base?

@blythed blythed force-pushed the docs/revamp branch 2 times, most recently from e7eec38 to 942e5c4 Compare November 3, 2023 19:02
@blythed blythed marked this pull request as ready for review November 5, 2023 11:06
@blythed blythed merged commit 9ba310c into superduper-io:main Nov 5, 2023
@blythed blythed deleted the docs/revamp branch June 1, 2024 10:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants