
Generate rich artwork profiles with metadata context (Unified Interface)
Source:R/artwork-plus-ai.R
artwork-plus-ai.RdEnhanced artwork profiling functions that provide richer analysis by including additional artwork context (artist name, creation time, etc.) alongside the image. These functions work with both Google Gemini and OpenAI providers.
These complement the standard analysis functions in artwork-ai.
Usage
art_profile_ai(
art_title,
artist_name,
drawing_hours,
brush_strokes,
img_path,
provider = NULL,
ml = NULL,
temp = 0,
timeout = 60
)
art_profile_full_ai(
story = NULL,
artist_name,
creation_time,
art_title,
img_path,
provider = NULL,
ml = NULL,
temp = 0,
timeout = 60
)Arguments
- art_title
Title of the artwork
- artist_name
Name of the artist who created the artwork
- drawing_hours
Number of hours spent creating the artwork
- brush_strokes
Number of individual brush strokes used
- img_path
Path to artwork image file or URL
- provider
Character. AI provider to use:
"gemini"or"openai". If NULL (default), usesARTCURATOR_PROVIDERenv var or defaults to gemini.- ml
Character. Model ID to use. Provider-specific.
- temp
Numeric. Temperature setting (0-2). Default 0 for structured output.
- timeout
Numeric. Request timeout in seconds. Default 60.
- story
Optional story or background about the artwork
- creation_time
Time taken to create the artwork (e.g., "10 hours")
Value
data.table with exactly 1 row and columns: category, style, methodology,
color, details. Includes prompt_versions, model/modelVersion, and
usage/usageMetadata attributes.
data.table with exactly 1 row and columns: medium, description, inspiration,
approach, impact. Includes prompt_versions, model/modelVersion, and
usage/usageMetadata attributes.
Details
Note: artgemini and artopenai previously exported these functions but they have been removed. Use artcurator for all artwork analysis.
Functions
art_profile_ai(): Generate concise artwork profileart_profile_full_ai(): Generate comprehensive artwork profile
Examples
if (FALSE) { # \dontrun{
# Auto-detect provider
profile <- art_profile_ai(
art_title = "Portrait of Jeezy",
artist_name = "Bobby Fatemi",
drawing_hours = 12,
brush_strokes = 5000,
img_path = "path/to/artwork.png"
)
# Use Gemini
profile <- art_profile_ai(
art_title = "Portrait of Jeezy",
artist_name = "Bobby Fatemi",
drawing_hours = 12,
brush_strokes = 5000,
img_path = "path/to/artwork.png",
provider = "gemini"
)
} # }
if (FALSE) { # \dontrun{
# Auto-detect provider
profile <- art_profile_full_ai(
story = "This piece was inspired by...",
artist_name = "Bobby Fatemi",
creation_time = "10 hours",
art_title = "Portrait of Jeezy",
img_path = "path/to/artwork.png"
)
# Use OpenAI
profile <- art_profile_full_ai(
artist_name = "Bobby Fatemi",
creation_time = "10 hours",
art_title = "Portrait of Jeezy",
img_path = "path/to/artwork.png",
provider = "openai",
ml = "gpt-5.1"
)
} # }