Skip to content

Commit

Permalink
Deployed 1e01d1f with MkDocs version: 1.6.1
Browse files Browse the repository at this point in the history
  • Loading branch information
Unknown committed Nov 22, 2024
1 parent e054460 commit b7e8113
Show file tree
Hide file tree
Showing 8 changed files with 103 additions and 246 deletions.
26 changes: 10 additions & 16 deletions contributing/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -478,45 +478,39 @@ <h2 id="get-started">Get Started!<a class="headerlink" href="#get-started" title
</li>
<li>
<p>Clone your fork locally:</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span></pre></div></td><td class="code"><div><pre><span></span><code>$<span class="w"> </span>git<span class="w"> </span>clone<span class="w"> </span>git@github.com:your_name_here/xinfer.git
</code></pre></div></td></tr></table></div>
<div class="highlight"><pre><span></span><code>$<span class="w"> </span>git<span class="w"> </span>clone<span class="w"> </span>git@github.com:your_name_here/xinfer.git
</code></pre></div>
</li>
<li>
<p>Install your local copy into a virtualenv. Assuming you have
virtualenvwrapper installed, this is how you set up your fork for
local development:</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
<span class="normal">2</span>
<span class="normal">3</span></pre></div></td><td class="code"><div><pre><span></span><code>$<span class="w"> </span>mkvirtualenv<span class="w"> </span>xinfer
<div class="highlight"><pre><span></span><code>$<span class="w"> </span>mkvirtualenv<span class="w"> </span>xinfer
$<span class="w"> </span><span class="nb">cd</span><span class="w"> </span>xinfer/
$<span class="w"> </span>python<span class="w"> </span>setup.py<span class="w"> </span>develop
</code></pre></div></td></tr></table></div>
</code></pre></div>
</li>
<li>
<p>Create a branch for local development:</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span></pre></div></td><td class="code"><div><pre><span></span><code>$<span class="w"> </span>git<span class="w"> </span>checkout<span class="w"> </span>-b<span class="w"> </span>name-of-your-bugfix-or-feature
</code></pre></div></td></tr></table></div>
<div class="highlight"><pre><span></span><code>$<span class="w"> </span>git<span class="w"> </span>checkout<span class="w"> </span>-b<span class="w"> </span>name-of-your-bugfix-or-feature
</code></pre></div>
<p>Now you can make your changes locally.</p>
</li>
<li>
<p>When you're done making changes, check that your changes pass flake8
and the tests, including testing other Python versions with tox:</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
<span class="normal">2</span>
<span class="normal">3</span></pre></div></td><td class="code"><div><pre><span></span><code>$<span class="w"> </span>flake8<span class="w"> </span>xinfer<span class="w"> </span>tests
<div class="highlight"><pre><span></span><code>$<span class="w"> </span>flake8<span class="w"> </span>xinfer<span class="w"> </span>tests
$<span class="w"> </span>python<span class="w"> </span>setup.py<span class="w"> </span><span class="nb">test</span><span class="w"> </span>or<span class="w"> </span>pytest
$<span class="w"> </span>tox
</code></pre></div></td></tr></table></div>
</code></pre></div>
<p>To get flake8 and tox, just pip install them into your virtualenv.</p>
</li>
<li>
<p>Commit your changes and push your branch to GitHub:</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
<span class="normal">2</span>
<span class="normal">3</span></pre></div></td><td class="code"><div><pre><span></span><code>$<span class="w"> </span>git<span class="w"> </span>add<span class="w"> </span>.
<div class="highlight"><pre><span></span><code>$<span class="w"> </span>git<span class="w"> </span>add<span class="w"> </span>.
$<span class="w"> </span>git<span class="w"> </span>commit<span class="w"> </span>-m<span class="w"> </span><span class="s2">&quot;Your detailed description of your changes.&quot;</span>
$<span class="w"> </span>git<span class="w"> </span>push<span class="w"> </span>origin<span class="w"> </span>name-of-your-bugfix-or-feature
</code></pre></div></td></tr></table></div>
</code></pre></div>
</li>
<li>
<p>Submit a pull request through the GitHub website.</p>
Expand Down
225 changes: 62 additions & 163 deletions examples/quickstart/index.html

Large diffs are not rendered by default.

9 changes: 2 additions & 7 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -481,18 +481,13 @@ <h2 id="why-xinfer">🤔 Why x.infer?<a class="headerlink" href="#why-xinfer" ti
<img alt="Object Detection" src="https://img.shields.io/badge/Object%20Detection-coral?style=for-the-badge" />
<img alt="Image to Text" src="https://img.shields.io/badge/Image%20to%20Text-gold?style=for-the-badge" /></p>
<p>Run any supported model using the following 4 lines of code:</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
<span class="normal">2</span>
<span class="normal">3</span>
<span class="normal">4</span>
<span class="normal">5</span>
<span class="normal">6</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kn">import</span> <span class="nn">xinfer</span>
<div class="highlight"><pre><span></span><code><span class="kn">import</span> <span class="nn">xinfer</span>

<span class="n">model</span> <span class="o">=</span> <span class="n">xinfer</span><span class="o">.</span><span class="n">create_model</span><span class="p">(</span><span class="s2">&quot;vikhyatk/moondream2&quot;</span><span class="p">)</span>
<span class="n">model</span><span class="o">.</span><span class="n">infer</span><span class="p">(</span><span class="n">image</span><span class="p">,</span> <span class="n">prompt</span><span class="p">)</span> <span class="c1"># Run single inference</span>
<span class="n">model</span><span class="o">.</span><span class="n">infer_batch</span><span class="p">(</span><span class="n">images</span><span class="p">,</span> <span class="n">prompts</span><span class="p">)</span> <span class="c1"># Run batch inference</span>
<span class="n">model</span><span class="o">.</span><span class="n">launch_gradio</span><span class="p">()</span> <span class="c1"># Launch Gradio interface</span>
</code></pre></div></td></tr></table></div>
</code></pre></div>
<p>Have a custom model? Create a class that implements the <code>BaseXInferModel</code> interface and register it with x.infer. See <a href="#add-your-own-model">Add Your Own Model</a> for more details.</p>
<h2 id="key-features">🌟 Key Features<a class="headerlink" href="#key-features" title="Permanent link">&para;</a></h2>
<div align="center">
Expand Down
22 changes: 8 additions & 14 deletions installation/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -364,29 +364,23 @@ <h1>Installation</h1>
You must have <a href="https://pytorch.org/get-started/locally/">PyTorch</a> installed to use x.infer.</p>
</blockquote>
<p>To install the barebones x.infer (without any optional dependencies), run:
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span></pre></div></td><td class="code"><div><pre><span></span><code>pip<span class="w"> </span>install<span class="w"> </span>xinfer
</code></pre></div></td></tr></table></div>
<div class="highlight"><pre><span></span><code>pip<span class="w"> </span>install<span class="w"> </span>xinfer
</code></pre></div>
x.infer can be used with multiple optional dependencies. You'll just need to install one or more of the following:</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
<span class="normal">2</span>
<span class="normal">3</span>
<span class="normal">4</span>
<span class="normal">5</span></pre></div></td><td class="code"><div><pre><span></span><code>pip<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;xinfer[transformers]&quot;</span>
<div class="highlight"><pre><span></span><code>pip<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;xinfer[transformers]&quot;</span>
pip<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;xinfer[ultralytics]&quot;</span>
pip<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;xinfer[timm]&quot;</span>
pip<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;xinfer[vllm]&quot;</span>
pip<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;xinfer[ollama]&quot;</span>
</code></pre></div></td></tr></table></div>
</code></pre></div>
<p>To install all optional dependencies, run:
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span></pre></div></td><td class="code"><div><pre><span></span><code>pip<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;xinfer[all]&quot;</span>
</code></pre></div></td></tr></table></div></p>
<div class="highlight"><pre><span></span><code>pip<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;xinfer[all]&quot;</span>
</code></pre></div></p>
<p>To install from a local directory, run:
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
<span class="normal">2</span>
<span class="normal">3</span></pre></div></td><td class="code"><div><pre><span></span><code>git<span class="w"> </span>clone<span class="w"> </span>https://github.com/dnth/x.infer.git
<div class="highlight"><pre><span></span><code>git<span class="w"> </span>clone<span class="w"> </span>https://github.com/dnth/x.infer.git
<span class="nb">cd</span><span class="w"> </span>x.infer
pip<span class="w"> </span>install<span class="w"> </span>-e<span class="w"> </span>.
</code></pre></div></td></tr></table></div></p>
</code></pre></div></p>



Expand Down
18 changes: 9 additions & 9 deletions sitemap.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,38 +2,38 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://dnth.github.io/x.infer/</loc>
<lastmod>2024-11-20</lastmod>
<lastmod>2024-11-22</lastmod>
</url>
<url>
<loc>https://dnth.github.io/x.infer/changelog/</loc>
<lastmod>2024-11-20</lastmod>
<lastmod>2024-11-22</lastmod>
</url>
<url>
<loc>https://dnth.github.io/x.infer/contributing/</loc>
<lastmod>2024-11-20</lastmod>
<lastmod>2024-11-22</lastmod>
</url>
<url>
<loc>https://dnth.github.io/x.infer/faq/</loc>
<lastmod>2024-11-20</lastmod>
<lastmod>2024-11-22</lastmod>
</url>
<url>
<loc>https://dnth.github.io/x.infer/installation/</loc>
<lastmod>2024-11-20</lastmod>
<lastmod>2024-11-22</lastmod>
</url>
<url>
<loc>https://dnth.github.io/x.infer/usage/</loc>
<lastmod>2024-11-20</lastmod>
<lastmod>2024-11-22</lastmod>
</url>
<url>
<loc>https://dnth.github.io/x.infer/xinfer/</loc>
<lastmod>2024-11-20</lastmod>
<lastmod>2024-11-22</lastmod>
</url>
<url>
<loc>https://dnth.github.io/x.infer/examples/intro/</loc>
<lastmod>2024-11-20</lastmod>
<lastmod>2024-11-22</lastmod>
</url>
<url>
<loc>https://dnth.github.io/x.infer/examples/quickstart/</loc>
<lastmod>2024-11-20</lastmod>
<lastmod>2024-11-22</lastmod>
</url>
</urlset>
Binary file modified sitemap.xml.gz
Binary file not shown.
41 changes: 10 additions & 31 deletions usage/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -380,42 +380,25 @@

<h1 id="usage">Usage<a class="headerlink" href="#usage" title="Permanent link">&para;</a></h1>
<p>To use xinfer in a project:</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kn">import</span> <span class="nn">xinfer</span>
</code></pre></div></td></tr></table></div>
<div class="highlight"><pre><span></span><code><span class="kn">import</span> <span class="nn">xinfer</span>
</code></pre></div>
<h2 id="listing-available-models">Listing Available Models<a class="headerlink" href="#listing-available-models" title="Permanent link">&para;</a></h2>
<p>You can list the available models using the <code>list_models()</code> function:</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="n">xinfer</span><span class="o">.</span><span class="n">list_models</span><span class="p">()</span>
</code></pre></div></td></tr></table></div>
<div class="highlight"><pre><span></span><code><span class="n">xinfer</span><span class="o">.</span><span class="n">list_models</span><span class="p">()</span>
</code></pre></div>
<p>This will display a table of available models and their backends and input/output types.</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
<span class="normal">2</span>
<span class="normal">3</span>
<span class="normal">4</span>
<span class="normal">5</span>
<span class="normal">6</span>
<span class="normal">7</span>
<span class="normal">8</span></pre></div></td><td class="code"><div><pre><span></span><code> Available Models
<div class="highlight"><pre><span></span><code> Available Models
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━┓
┃ Backend ┃ Model ID ┃ Input/Output ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━┩
│ transformers │ Salesforce/blip2-opt-2.7b │ image-text --&gt; text │
│ transformers │ sashakunitsyn/vlrm-blip2-opt-2.7b │ image-text --&gt; text │
│ transformers │ vikhyatk/moondream2 │ image-text --&gt; text │
└──────────────┴───────────────────────────────────┴─────────────────────┘
</code></pre></div></td></tr></table></div>
</code></pre></div>
<h2 id="loading-and-using-a-model">Loading and Using a Model<a class="headerlink" href="#loading-and-using-a-model" title="Permanent link">&para;</a></h2>
<p>You can load and use any of the available models. Here's an example using the Moondream2 model:</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="c1"># Instantiate a Transformers model</span>
<div class="highlight"><pre><span></span><code><span class="c1"># Instantiate a Transformers model</span>
<span class="n">model</span> <span class="o">=</span> <span class="n">xinfer</span><span class="o">.</span><span class="n">create_model</span><span class="p">(</span><span class="s2">&quot;vikhyatk/moondream2&quot;</span><span class="p">,</span> <span class="n">backend</span><span class="o">=</span><span class="s2">&quot;transformers&quot;</span><span class="p">)</span>

<span class="c1"># Input data</span>
Expand All @@ -426,20 +409,16 @@ <h2 id="loading-and-using-a-model">Loading and Using a Model<a class="headerlink
<span class="n">output</span> <span class="o">=</span> <span class="n">model</span><span class="o">.</span><span class="n">inference</span><span class="p">(</span><span class="n">image</span><span class="p">,</span> <span class="n">prompt</span><span class="p">,</span> <span class="n">max_new_tokens</span><span class="o">=</span><span class="mi">50</span><span class="p">)</span>

<span class="nb">print</span><span class="p">(</span><span class="n">output</span><span class="p">)</span>
</code></pre></div></td></tr></table></div>
</code></pre></div>
<p>This will produce a description of the image, such as:
"An animated character with long hair and a serious expression is eating a large burger at a table, with other characters in the background."</p>
<p>You can use the same pattern for other models like BLIP2 or VLRM-finetuned BLIP2:</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
<span class="normal">2</span>
<span class="normal">3</span>
<span class="normal">4</span>
<span class="normal">5</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="c1"># For BLIP2</span>
<div class="highlight"><pre><span></span><code><span class="c1"># For BLIP2</span>
<span class="n">model</span> <span class="o">=</span> <span class="n">xinfer</span><span class="o">.</span><span class="n">create_model</span><span class="p">(</span><span class="s2">&quot;Salesforce/blip2-opt-2.7b&quot;</span><span class="p">,</span> <span class="n">backend</span><span class="o">=</span><span class="s2">&quot;transformers&quot;</span><span class="p">)</span>

<span class="c1"># For VLRM-finetuned BLIP2</span>
<span class="n">model</span> <span class="o">=</span> <span class="n">xinfer</span><span class="o">.</span><span class="n">create_model</span><span class="p">(</span><span class="s2">&quot;sashakunitsyn/vlrm-blip2-opt-2.7b&quot;</span><span class="p">,</span> <span class="n">backend</span><span class="o">=</span><span class="s2">&quot;transformers&quot;</span><span class="p">)</span>
</code></pre></div></td></tr></table></div>
</code></pre></div>
<p>Use the models in the same way as demonstrated with the Moondream2 model.</p>


Expand Down
8 changes: 2 additions & 6 deletions xinfer/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -469,16 +469,12 @@ <h3 id="xinfer.core.create_model--parameters">Parameters<a class="headerlink" hr
The model to create.
TIMM, Vision2Seq, and Ultralytics models type here is to support user passing in the models directly.
This is useful for models not registered in the model registry.</p>
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
<span class="normal">2</span>
<span class="normal">3</span>
<span class="normal">4</span>
<span class="normal">5</span></pre></div></td><td class="code"><div><pre><span></span><code>Eg:
<div class="highlight"><pre><span></span><code>Eg:
```python
model = UltralyticsModel(&quot;yolov5n6u&quot;)
model = xinfer.create_model(model)
```
</code></pre></div></td></tr></table></div>
</code></pre></div>

<details class="quote">
<summary>Source code in <code>xinfer/core.py</code></summary>
Expand Down

0 comments on commit b7e8113

Please sign in to comment.