semvec/pypi-packages huggingface dataset:
lossrider 0.0.3
A plotting library that create Line Rider maps
Requires Python: >=3.6

# Loss Rider
Finally, a Python plotting library that can (only) output __Line Rider__ maps!

<p align="center" width="100%">
    <br>
    <img  src="https://github.com/user-attachments/assets/219ac1fa-57a5-4c7f-bab3-7bbb5a78a70b">
    <br>
</p>

ML practitioners can experience gradient descent like never before!
<p align="center" width="100%">
    <br>
    <img  src="https://github.com/user-attachments/assets/025fb50e-7b03-452e-8b45-a15e258012db">
    <br>
</p>


With support for all important features of a line graph.
<p align="center" width="100%">
    <br>
    <img  src="https://github.com/user-attachments/assets/da32dd51-ba91-4d3d-9bff-30c5f6c051d8">
    <br>
</p>


And don't forget interactive plotting in Jupyter Notebooks!
<p align="center" width="100%">
    <br>
    <img src="https://github.com/user-attachments/assets/12bed788-a3a3-441c-a991-a6565b526e00">
    <br>
</p>

The above plots all use data from the [Unit-Scaled Maximal Update Parameterization](https://arxiv.org/abs/2407.17465) paper which proposes a more usable version of μP.

# Installation
```bash
pip install lossrider
```

# Usage

```python
import pandas as pd
from lossrider import lossrider

# Load a csv that contains columns named "Validation Loss", "Run Count" and "model_type"
data = pd.read_csv("./_data/sweep_df.csv")

# Plot it!
lossrider(
    data,
    x="Run Count", 
    y="Validation Loss",
    hue="model_type",
    xlim=(0.6, 340),
    ylim=(3.2, 3.8),
    xticks=(1, 10, 100), 
    yticks=[x/10 for x in range(32, 39)],
    width=1000, height=500, fontsize=30,
    logx=True, grid=False,
    legend=True, legend_loc=(.65, 1),
    outfile='maps/sweep_strategies',
)
```
The above produces the below plot

![lossridergif_sweep](https://github.com/user-attachments/assets/84cc70ff-a28c-4bc6-9ddc-00dbec9e5063)
icloud-email 2.0.0
Simple utility for sending emails via iCloud.
Requires Python: >=3.9

# icloud-email

This is a Python package that provides the function `send_email`:

    def send_email(service_name, recipient, subject, html, attachments=[]):
        sender = f"{service_name} <{SENDER_EMAIL_ADDRESS}>"

        msg = MIMEMultipart()
        msg['From'] = sender
        msg['To'] = recipient
        msg['Date'] = formatdate(localtime=True)
        msg['Subject'] = subject
        msg.attach(MIMEText(html, 'html'))
        for attachment in attachments:
            msg.attach(attachment)
        # Send it off via smtp.mail.me.com
        context = create_default_context()
        with SMTP("smtp.mail.me.com", 587) as smtp:
            smtp.starttls(context=context)
            smtp.login(ICLOUD_USERNAME, ICLOUD_PASSWORD)
            smtp.sendmail(sender, recipient, msg.as_string())

## Installation

    pip install icloud-email

## Usage

    from email.mime.application import MIMEApplication
    from icloud_email import send_email

    attachment = MIMEApplication(b"File contents", name="filename.txt")
    attachment['Content-Disposition'] = 'attachment; filename="filename.txt"'

    send_email(
        "Example Service",
        "recipient@example.org",
        "Re: Example Subject",
        "<h1>This is an example email</h1>",
        [attachment],
    )
rate-limiter-and-logger 1.0.0
A simple rate limiting library using Redis and production ready logger
Requires Python: >=3.11

# README #

This README would normally document whatever steps are necessary to get your application up and running.

### What is this repository for? ###

* Quick summary
* Version
* [Learn Markdown](https://bitbucket.org/tutorials/markdowndemo)

### How do I get set up? ###

* Summary of set up
* Configuration
* Dependencies
* Database configuration
* How to run tests
* Deployment instructions

### Contribution guidelines ###

* Writing tests
* Code review
* Other guidelines

### Who do I talk to? ###

* Repo owner or admin
* Other community or team contact
Vectrieve 0.1.0
Enhanced Document Semantic Search with Cosine Similarity and Document Scanning
Requires Python: >=3.10

# 🚀 Enhanced Document Semantic Search

## Overview
The "Enhanced Document Semantic Search" package provides powerful tools for searching and analyzing documents using advanced natural language processing techniques. With this package, you can:

- **Search documents**: Quickly find relevant information within your documents by running semantic searches based on natural language queries.
- **Scan and search documents**: Easily extract text from images and PDFs, then perform semantic searches on the extracted content.
- **Utilize cutting-edge embeddings**: The package leverages the state-of-the-art Sentence Transformer model from Hugging Face to generate high-quality document and query embeddings.
- **Achieve high accuracy**: The package uses cosine similarity to rank document relevance, providing accurate and meaningful search results.

## Installation
You can install the "Enhanced Document Search" package using pip:

pip install enhanced-document-search

## Usage
Here's an example of how to use the package to search a document:

```python
from vectrieve.functions import search_document

# Search a document
results = search_document("path/to/document.pdf", "query")
for doc, score in results:
    print(f"Text: {doc.page_content}")
    print(f"Source: {doc.metadata.get('source', 'Unknown')}")
    print(f"Similarity: {score:.4f}")

And here's an example of how to use the package to scan and search a document:

from vectrieve.functions import scan_and_search
from PIL import Image

# Scan and search a document
image = Image.open("path/to/image.jpg")
results = scan_and_search(image, "query")
for doc, score in results:
    print(f"Text: {doc.page_content}")
    print(f"Source: {doc.metadata.get('source', 'Unknown')}")
    print(f"Similarity: {score:.4f}")

Features

Robust document loading: The package supports a variety of file formats, including PDF, DOCX, TXT, XLS, and XLSX.
Intelligent document chunking: The package automatically splits long documents into manageable chunks, ensuring efficient processing and search.
Highly accurate search: The use of cosine similarity and state-of-the-art embeddings provides accurate and relevant search results.
Seamless document scanning: The package can extract text from images using Tesseract OCR, allowing you to search scanned documents.

Contributing
We welcome contributions to the "Vectrieve" package. If you'd like to report a bug, request a feature, or contribute code, please visit the project's GitHub repository.
License
This project is licensed under the MIT License.

This README file provides a high-level overview of the "Vectrieve" package, including its key features, installation instructions, usage examples, and information on contributing to the project. Feel free to customize this template to fit your specific package and requirements.