Skip to content
Back to skills

Tensorflow Serving Layer Inspection

BSecurity

Use when after deploying a TensorFlow model via TensorFlow Serving (e.

  • 15 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 12, 2026
ai-agentspythondocker

Security analysis

B88/100
  • criticalDownloads and executes remote scripts — classic supply chain attack

Pro shows the line behind each finding and how to fix it

Scanned September 12, 2026

npx -y skills add HolobiomicsLab/asb-skill-collections --skill tensorflow-serving-layer-inspection --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Tensorflow Serving Layer Inspection?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Tensorflow Serving Layer Inspection
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/holobiomicslab-tensorflow-serving-layer-inspection/badge)](https://www.skillsdirectory.com/skills/holobiomicslab-tensorflow-serving-layer-inspection)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: tensorflow-serving-layer-inspection
description: Use when after deploying a TensorFlow model via TensorFlow Serving (e.
license: CC-BY-4.0
metadata:
  edam_topics: []
  tools:
  - TensorFlow Serving
  - Python
  - docker
  - docker-compose
  license_tier: open
  provenance_tier: literature
derived_from:
- doi: 10.1021/acs.jnatprod.1c00399
  title: npclassifier
evidence_spans:
- We pass through tensorflow serving at this url
- Make sure you have python installed
claims: []
provenance:
  collection: https://w3id.org/holobiomicslab/asb-skill/collection/metabolomics/v2
  assembled_by: scripts/collect_metabolomics_collection.py
  sources:
  - build: coll_npclassifier_cq
    doi: 10.1021/acs.jnatprod.1c00399
    title: npclassifier
  dedup_kept_from: coll_npclassifier_cq
schema_version: 0.2.0
attribution:
  generator: AgenticScienceBuilder
  original_doi: 10.1021/acs.jnatprod.1c00399
  all_source_dois:
  - 10.1021/acs.jnatprod.1c00399
  zenodo_doi: 10.5281/zenodo.20794027
  curators: []
  promoter: Louis-Félix Nothias
  sponsor: CNRS & Université Côte d'Azur
---

# tensorflow-serving-layer-inspection

## Summary

Validate that a deployed TensorFlow Serving model exposes the correct input and output layer names by querying the /model/metadata HTTP endpoint and parsing the JSON response. This skill ensures model architecture conformance before programmatic use.

## When to use

After deploying a TensorFlow model via TensorFlow Serving (e.g., via docker-compose), verify that the model's input layer names match expected values ('input_2048' and 'input_4096') and output layer name is 'output', to catch layer-naming mismatches before they propagate to downstream classification or inference code.

## When NOT to use

- Model has not yet been deployed or TensorFlow Serving is not running—start the server first.
- The /model/metadata endpoint is not exposed or is behind authentication that has not been configured.
- Input/output layer naming is flexible or intentionally variable; use this skill only when strict layer-name conformance is a requirement.

## Inputs

- Running TensorFlow Serving instance (http://host:port)
- Expected input layer names (e.g., ['input_2048', 'input_4096'])
- Expected output layer name (e.g., 'output')

## Outputs

- JSON metadata response from /model/metadata endpoint
- Extracted input and output layer names
- Validation report (pass/fail, layer names found, comparison result)

## How to apply

Start the TensorFlow Serving instance using docker-compose (e.g., `make server-compose`). Send an HTTP GET request to the /model/metadata endpoint on the running server. Parse the returned JSON response to extract the names of all input and output layers. Cross-reference the extracted names against the expected schema: inputs should be exactly 'input_2048' and 'input_4096', and output should be 'output'. Document the layer names found, the comparison result, and pass/fail status in a validation report. If names do not match, the model conversion or serving configuration is misaligned and must be corrected before proceeding.

## Related tools

- **docker** (Container runtime for launching TensorFlow Serving instance)
- **docker-compose** (Orchestration tool to bring up NP Classifier server with `make server-compose`)
- **TensorFlow Serving** (Serving framework that exposes /model/metadata endpoint for layer name inspection)
- **Python** (Language for parsing JSON metadata response and generating validation report)

## Examples

```
curl -X GET http://localhost:8501/v1/models/NP_Classifier/metadata | python -m json.tool
```

## Evaluation signals

- HTTP 200 response received from /model/metadata endpoint with valid JSON payload
- Extracted input layers exactly match expected names 'input_2048' and 'input_4096'
- Extracted output layer exactly matches expected name 'output'
- Validation report documents all layer names found and final pass/fail status
- No layer-naming mismatches between model schema and downstream inference code (e.g., /classify endpoint)

## Limitations

- Requires TensorFlow Serving to be running and the /model/metadata endpoint to be network-accessible.
- Layer names are fixed at model conversion time; if incorrect names are embedded in the HDF5 TF2 model, this inspection will pass but the model remains misconfigured for the intended workflow.
- Does not validate layer shapes, data types, or tensor dimensions—only names are checked.

## Evidence

- [other] Does the deployed NP Classifier model expose input layers named 'input_2048' and 'input_4096' and an output layer named 'output' when queried through the TensorFlow Serving metadata endpoint?: "Does the deployed NP Classifier model expose input layers named 'input_2048' and 'input_4096' and an output layer named 'output' when queried through the TensorFlow Serving metadata endpoint?"
- [other] Send an HTTP GET request to the /model/metadata endpoint on the running TensorFlow Serving instance.: "Send an HTTP GET request to the /model/metadata endpoint on the running TensorFlow Serving instance."
- [other] Parse the JSON response to extract input and output layer names.: "Parse the JSON response to extract input and output layer names."
- [readme] We pass through tensorflow serving at this url: /model/metadata: "We pass through tensorflow serving at this url: /model/metadata"
- [readme] Input layers' names should be "input_2048" and "input_4096"; Output layer's name should be "output": "Input layers' names should be "input_2048" and "input_4096" and Output layer's name should be "output""
- [readme] If the model input names change, then we need to change it in the code: "If the model input names change, then we need to change it in the code"

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…