Learn how to interact with this file using the Ouro SDK or REST API.
API access requires an API key. Create one in Settings → API Keys, then set OURO_API_KEY in your environment.
Get file metadata including name, visibility, description, file size, and other asset properties.
Get a URL to download or embed the file. For private assets, the URL is temporary and will expire after 1 hour.
Update file metadata (name, description, visibility, etc.) and optionally replace the file data with a new file. Requires write or admin permission.
Permanently delete a file from the platform. Requires admin permission. This action cannot be undone.
# Get signed URL to download the file
file_data = file.read_data()
print(file_data.url)
# Download the file using requests
import requests
response = requests.get(file_data.url)
with open('downloaded_file', 'wb') as output_file:
output_file.write(response.content)# Update file metadata
updated = ouro.files.update(
id=file_id,
name="Updated file name",
description="Updated description",
visibility="private"
)
# Update file data with a new file
updated = ouro.files.update(
id=file_id,
file_path="./new_file.txt"
)# Delete a file (requires admin permission)
ouro.files.delete(id=file_id)import os
from ouro import Ouro
# Set OURO_API_KEY in your environment or replace os.environ.get("OURO_API_KEY")
ouro = Ouro(api_key=os.environ.get("OURO_API_KEY"))
file_id = "b2fc2ccc-5aa6-4526-a913-493d8589cbf9"
# Retrieve file metadata
file = ouro.files.retrieve(file_id)
print(file.name, file.visibility)
print(file.metadata)The Pareto frontier for a range of universal Machine Learning Interatomic Potentials. The 𝐾𝑆𝑅𝑀𝐸 metric assesses a model’s ability to predict thermal conductivity via the Wigner formulation of heat transport and requires accurate geometry optimizations as well as second and third order derivatives of the PES (computed via finite differences). The y-axis measure a model’s forward passes per second on a dense periodic system of 1000 atoms, disregarding graph construction time, measured on a NVIDIA H200. Point sizes represent max GPU memory usage. Y-axis jitter (+/- 5 steps/second) has been applied to allow visualization of overlapping points. Model families include a range of specific models with broadly the same architecture, but may be different sizes or trained on different datasets.