semvec/pypi-packages huggingface dataset:
spdx3-validate 0.0.5
Validates SPDX 3 data files
Requires Python: >=3.8

# SPDX 3 Validation Tool

Validates SPDX 3 documents

While standalone tools like `pyshacl` and `check-jsonschema` can be used to
validate SPDX 3 documents, there are a few context-aware checks that can be
useful. This includes:

1. Ignored SHACL errors for missing `spdxId`s if they are defined in an
   `ExternalMap`
2. Validation that any `spdxId` defined in an `ExternalMap` are _not_ present
   in the document
3. SHACL Validation of merged documents (in this way, if you reference an
   `spdxId` from an `ExternalMap` and then pass the document that provides that
   `spdxId`, the type can be validated)
4. (Hopefully) More useful JSON schema error output

## Installation

`spdx3-validate` can be installed using `pip`:

```shell
python3 -m pip install spdx3-validate
```

## Developing

Developing on `spdx3-validate` is best done using a virtual environment. You
can configure one and install spdx3-validate in editable mode with all
necessary development dependencies by running:

```shell
python3 -m venv .venv
. .venv/bin/activate
pip install -e ".[dev]"
```

## TODO

* Option to automatically download dependencies based on `locationHint`
* Offline validation?
fletcher-maximus 0.0.6
A package for quickly spotting molecular geometric features in protein structural files.
Requires Python: >=3.8

# Fletcher

While sequence alignments have historically helped infer activity once homology is identified, this is usually limited by the ability of the MSA tool to spot similarities and align them correctly. With the advent of AlphaFold, structural similarities may be found based on sequence similarities that would have flown under the radar if using an MSA exclusively. 'Fletcher' is a tool that will get a list of residues (and alternatives) and look for them in AlphaFold models provided that they lie within a fixed distance. 

Usage: 

```
fletcher.py [-h] -f FILENAME -r RESIDUES -d DISTANCE

The program will try to find a list of residues within a fixed distance from the
centre of mass. Concept: Federico Sabbadin & Jon Agirre, University of York,
UK.

Required arguments:

  -f FILENAME, --filename FILENAME
                        The name of the file to be processed, in PDB or mmCIF
                        format
  -r RESIDUES, --residues RESIDUES
                        A list of residues in one-letter code, comma
                        separated, and including alternatives, e.g. L,A,FWY
  -d DISTANCE, --distance DISTANCE
                        Specifies how far each of the residues can be from the
                        rest, in Angstroems
  -p PLDDT, --plddt PLDDT
                        Flag up candidate residues with average pLDDT below
                        thresold (Jumper et al., 2020).

Optional arguments:

-h, --help            show this help message and exit
```

Fletcher is not an acronym. It is the surname of the greatest musical catalyst I know: Guy Fletcher (https://www.guyfletcher.co.uk).
edenai 0.7.0a1
EdenAI sdk for ython
Requires Python: >=3.8

# Python SDK

Workflowzzz

## Installation

```sh
pip install git+ssh://git@github.com/edenai/python_sdk.git
```

## Example

You can use `client.create_or_update(name="my_unique_name", data=data)` to create a workflow. If a workflow with this name already exists
it will update the workflow. You can always view the workflow you've build in the UI in the [EdenAI App](https://app.edenai.run/v2/workflows)

To see which parameters are availabe for each feature, you can check our [api docs](https://docs.edenai.co/reference/text_chat_create)

```python

from edenai.workflow import workflow_client

def main():
    client = workflow_client(
        api_key=os.environ.get("API_KEY")
    )

    data = {
        "nodes": [
            {
                "type": "input",
                "name": "Input_Node",
                "data": [
                    {"type": "string", "label": "text", "defaultValue": "Hello, world!"}
                ],
            },
            {
                "type": "text/chat",
                "name": "some_chat",
                "data": [
                    {"name": "provider", "value": "openai/gpt-4o"},
                    {"name": "text", "value": "explain me: {{Input_Node.text}}"},
                ],
            },
            {
                "type": "translation/automatic_translation",
                "name": "Translation",
                "data": [
                    {"name": "provider", "value": "google"},
                    {"name": "text", "value": "{{some_chat.generated_text}}"},
                    {"name": "source_language", "value": "en"},
                    {"name": "target_language", "value": "fr"},
                ],
            },
            {
                "type": "text/keyword_extraction",
                "name": "Keywords",
                "data": [
                    {"name": "provider", "value": "openai"},
                    {"name": "text", "value": "{{Translation.text}}"},
                ],
            },
            {
                "type": "code",
                "name": "some_code",
                "data": [
                    {
                        "name": "code",
                        "value": "const valueFromInput = {{ Input_Node.text }};\n  const valueFromNode = {{ some_chat.generated_text }};  \nfunction greet(msg) {\n  return `welcome ${msg}!`;\n};\n\nreturn {\n input: greet(valueFromInput),\n node: greet(valueFromNode),\n};",
                    }
                ],
            },
            {
                "type": "output",
                "name": "Output_Node",
                "data": [{"name": "french_keywords", "value": "{{Keywords.items[*].keyword}}"}],
            },
        ]
    }

    response = client.create_or_update(name="code_test", data=data)
    execution = client.execute(name="code_test", data={"text": "Tell me a story about Eden AI"})
    print(execution["output"])



if __name__ == "__main__":
    main()


```