> ## Documentation Index
> Fetch the complete documentation index at: https://proto.evodesign.org/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# PARADE UTR activity

> Drive a UTR toward high or low activity in one cell line using the PARADE model.

<div class="page-hero">
  <img class="page-hero-banner" src="https://proto-bio.github.io/proto-assets/images/constraint/parade-utr-activity/hero.png" alt="PARADE UTR activity" />
</div>

<Note>
  **License:** PARADE is open source and free for academic and commercial use under an MIT license and may require explicit attribution when utilized. Please refer to [the license](https://github.com/autosome-ru/parade/blob/master/LICENSE) for full terms.
</Note>

<p class="entity-disclaimer">This constraint is open source. Any third-party models, product names, or trademarks referenced are the property of their respective owners, and Proto is not affiliated with them.</p>

<hr class="entity-rule" />

<input type="radio" name="tab-constraint-parade-utr-activity" id="none-constraint-parade-utr-activity" class="tab-radio-input" />

<input type="radio" name="tab-constraint-parade-utr-activity" id="tools-constraint-parade-utr-activity" class="tab-radio-input" defaultChecked />

<input type="radio" name="tab-constraint-parade-utr-activity" id="source-constraint-parade-utr-activity" class="tab-radio-input" />

<input type="radio" name="tab-constraint-parade-utr-activity" id="cite-constraint-parade-utr-activity" class="tab-radio-input" />

<div class="tool-tab-bar"><span class="tool-tab-wrap"><label for="tools-constraint-parade-utr-activity" class="tool-tab tab-open badge-tools"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="7" height="7" x="3" y="3" rx="1" /><rect width="7" height="7" x="14" y="3" rx="1" /><rect width="7" height="7" x="14" y="14" rx="1" /><rect width="7" height="7" x="3" y="14" rx="1" /></svg> Tools Used</label><label for="none-constraint-parade-utr-activity" class="tool-tab tab-close badge-tools"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="7" height="7" x="3" y="3" rx="1" /><rect width="7" height="7" x="14" y="3" rx="1" /><rect width="7" height="7" x="14" y="14" rx="1" /><rect width="7" height="7" x="3" y="14" rx="1" /></svg> Tools Used</label></span> <span class="tool-tab-wrap"><label for="source-constraint-parade-utr-activity" class="tool-tab tab-open badge-source"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6" /><polyline points="8 6 2 12 8 18" /></svg> Source</label><label for="none-constraint-parade-utr-activity" class="tool-tab tab-close badge-source"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6" /><polyline points="8 6 2 12 8 18" /></svg> Source</label></span> <span class="tool-tab-wrap"><label for="cite-constraint-parade-utr-activity" class="tool-tab tab-open badge-cite"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 21c3 0 7-1 7-8V5c0-1.25-.756-2.017-2-2H4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2 1 0 1 0 1 1v1c0 1-1 2-2 2s-1 .008-1 1.031V20c0 1 0 1 1 1z" /><path d="M15 21c3 0 7-1 7-8V5c0-1.25-.757-2.017-2-2h-4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2h.75c0 2.25.25 4-2.75 4v3c0 1 0 1 1 1z" /></svg> Cite</label><label for="none-constraint-parade-utr-activity" class="tool-tab tab-close badge-cite"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 21c3 0 7-1 7-8V5c0-1.25-.756-2.017-2-2H4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2 1 0 1 0 1 1v1c0 1-1 2-2 2s-1 .008-1 1.031V20c0 1 0 1 1 1z" /><path d="M15 21c3 0 7-1 7-8V5c0-1.25-.757-2.017-2-2h-4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2h.75c0 2.25.25 4-2.75 4v3c0 1 0 1 1 1z" /></svg> Cite</label></span></div>

<a href="/docs/tools/sequence-scoring/parade" class="tab-panel tools-panel tools-panel-single" data-tab="tools-constraint-parade-utr-activity">
  <div class="tools-single-card">
    <img noZoom src="https://proto-bio.github.io/proto-assets/images/tool/parade/social.png" alt="" loading="lazy" />
  </div>

  <span class="panel-goto-btn tools-goto-btn"><span><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12h14" /><path d="m12 5 7 7-7 7" /></svg> Go to Tool Page</span></span>
</a>

<a href="https://github.com/evo-design/proto-language/blob/d3b7822f74ea64747cc751a3b2ab1aa6b799ac47/proto_language/constraint/rna_expression/parade_utr_activity_constraint.py#L262" target="_blank" class="tab-panel source-panel" data-tab="source-constraint-parade-utr-activity">
  <div class="source-info">
    <img noZoom src="https://github.com/evo-design.png?size=40" class="source-avatar" width="36" height="36" />

    <span class="source-path">evo-design/proto-language<span class="source-subpath">/proto\_language/constraint/rna\_expression/parade\_utr\_activity\_constraint.py</span></span>
  </div>

  <span class="panel-goto-btn source-goto-btn"><span><svg width="14" height="14" viewBox="0 0 24 24" fill="currentColor"><path d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z" /></svg> View source</span></span>
</a>

<div class="tab-panel cite-panel" data-tab="cite-constraint-parade-utr-activity">
  <div class="cite-code-wrap">
    ```bibtex theme={null}
    @article{khoroshkin2024parade,
      title={A generative framework for enhanced cell-type specificity in rationally designed mRNAs},
      author={Khoroshkin, Matvei and Zinkevich, Arsenii and Aristova, Elizaveta and Yousefi, Hassan and Lee, Sean B. and Mittmann, Tabea and Manegold, Karoline and Penzar, Dmitry and Raleigh, David R. and Kulakovskiy, Ivan V. and Goodarzi, Hani},
      journal={bioRxiv},
      year={2024},
      publisher={Cold Spring Harbor Laboratory},
      doi={10.1101/2024.12.31.630783}
    }
    ```
  </div>

  <span class="panel-goto-btn cite-copy-btn"><span><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 21c3 0 7-1 7-8V5c0-1.25-.756-2.017-2-2H4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2 1 0 1 0 1 1v1c0 1-1 2-2 2s-1 .008-1 1.031V20c0 1 0 1 1 1z" /><path d="M15 21c3 0 7-1 7-8V5c0-1.25-.757-2.017-2-2h-4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2h.75c0 2.25.25 4-2.75 4v3c0 1 0 1 1 1z" /></svg> Copy citation</span></span>
</div>

<div class="entity-contributors"><span class="entity-contributors-label">Constraint contributors</span><span class="entity-contributors-people"><a class="entity-contributor" href="https://github.com/bviggiano" target="_blank" rel="noopener" title="bviggiano: 1 commit"><img noZoom class="entity-contributor-avatar" src="https://avatars.githubusercontent.com/u/21143637?v=4&s=64" alt="" loading="lazy" /><span class="entity-contributor-login">bviggiano</span></a><a class="entity-contributor" href="https://github.com/dguo8412" target="_blank" rel="noopener" title="dguo8412: 1 commit"><img noZoom class="entity-contributor-avatar" src="https://avatars.githubusercontent.com/u/46211285?v=4&s=64" alt="" loading="lazy" /><span class="entity-contributor-login">dguo8412</span></a><a class="entity-contributor" href="https://github.com/roknabadi" target="_blank" rel="noopener" title="roknabadi: 1 commit"><img noZoom class="entity-contributor-avatar" src="https://avatars.githubusercontent.com/u/74315203?v=4&s=64" alt="" loading="lazy" /><span class="entity-contributor-login">roknabadi</span></a></span></div>
Score UTR proposals by predicted single-cell activity.

## API Reference

<div class="api-model-section api-model-static api-config-section">
  <div class="api-model-header"><span class="api-model-badge api-config-badge">Config</span><span class="api-model-name">ParadeUTRActivityConfig</span><a href="https://github.com/evo-design/proto-language/blob/d3b7822f74ea64747cc751a3b2ab1aa6b799ac47/proto_language/constraint/rna_expression/parade_utr_activity_constraint.py#L49" target="_blank" class="func-table-btn func-source-btn api-model-source"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6" /><polyline points="8 6 2 12 8 18" /></svg> Source</a></div>

  Configuration for the single-cell PARADE UTR activity constraint.

  <ParamField path="construct_type" type="enum" default="utr5">
    PARADE UTR model to score with: 'utr5' (5' UTR) or 'utr3' (3' UTR).

    Options: `utr5`, `utr3`
  </ParamField>

  <ParamField path="cell_type" type="enum" default="c2">
    PARADE cell code whose predicted activity is scored.

    Options: `c1`, `c2`, `c4`, `c6`, `c17`, `c13`
  </ParamField>

  <ParamField path="direction" type="enum" default="max">
    Whether to maximize ('max') or minimize ('min') the activity.

    Options: `max`, `min`
  </ParamField>

  <ParamField path="sigmoid_center" type="number" default="2.0">
    Raw PARADE activity mapped to energy 0.5.
  </ParamField>

  <ParamField path="sigmoid_scale" type="number" default="1.0">
    Positive float32-safe width of the sigmoid transform; larger is gentler.
  </ParamField>

  <ParamField path="temperature" type="number" default="1.0">
    Fallback softmax temperature for direct gradient calls; optimizer schedules take precedence.
  </ParamField>

  <ParamField path="device" type="string" default="cuda">
    Device used for PARADE inference.
  </ParamField>

  <ParamField path="batch_size" type="integer" default="1">
    Number of sequences scored per PARADE GPU batch.
  </ParamField>
</div>

<div class="api-model-section api-model-static api-output-section">
  <div class="api-model-header"><span class="api-model-badge api-output-badge">Returns</span><span class="api-model-name">ConstraintOutput</span></div>

  One result per proposal. `score` is in `[0.0, 1.0]`
  (lower is better in the requested direction); `metadata` carries the raw
  `activity`.
</div>

## Usage

```python python icon="python" theme={null}
from proto_language.core import Constraint
from proto_language.constraint import parade_utr_activity_constraint, ParadeUTRActivityConfig

constraint = Constraint(
    inputs=[segment],
    function=parade_utr_activity_constraint,
    function_config=ParadeUTRActivityConfig(
        # Configure parameters here
    ),
)

scores = constraint.evaluate()
```

## Metadata

| Property        | Value                            |
| --------------- | -------------------------------- |
| Key             | `parade-utr-activity`            |
| Function        | `parade_utr_activity_constraint` |
| Category        | `rna_expression`                 |
| Mode            | `dual`                           |
| Uses GPU        | `True`                           |
| Supported Types | `dna`, `rna`                     |
