Titles, topics, and hashtags
Use the /gist
endpoint if you require a swift breakdown of the essence of your videos. This endpoint operates exclusively on a set of predefined formats to generate the following:
- Title: Distills the essence of a video into a brief, coherent phrase, facilitating quick understanding and categorization. For example, a title like "From Consumerism to Minimalism: A Journey Toward Sustainable Living" clearly indicates the video's narrative trajectory, emphasizing themes related to consumption patterns and sustainable lifestyles.
- Topic: Represents the central themes or subjects of a video and provides a high-level understanding based on the meaning conveyed by all modalities. Topics enable effective categorization and quick referencing. For example, "Shopping Vlog Lifestyle" denotes a video covering aspects related to shopping experiences, vlogging, and the associated lifestyle.
- Hashtag: Concisely summarizes the themes, subjects, or sentiments expressed within a video. Hashtags improve categorization and searchability on social media platforms. For example, hashtags such as
#BlackFriday,
#ShoppingMania,
and#Consumerism
indicate key focal points in a video, potentially related to shopping events, consumer behaviors, or broader commentary on consumption patterns.
For a description of each field in the request and response, see theAPI Reference > Generate titles, topics, or hashtags page.
Depending on your needs, you can generate either a single type of text or multiple types simultaneously with a single API call. Refer to the examples provided below for guidance.
Prerequisites
The examples in this guide assume the following:
- You’re familiar with the concepts that are described on the Platform overview page.
- You’ve already created an index, and the Pegasus video understanding model is enabled for this index..
- You've uploaded a video, and the platform has finished indexing it.
Generate a title
To generate a title based on the content of a video, invoke the gist
method of the generate
object with the following parameters:
video_id
: A string representing the unique identifier of the video for which you want to generate a title.types
: An array of strings representing the type of text you want to generate . This example uses["title"]
.
from twelvelabs import TwelveLabs
client = TwelveLabs(api_key="<YOUR_API_KEY>")
gist = client.generate.gist(
video_id="<YOUR_VIDEO_ID>",
types=["title"]
)
print(f"Title={gist.title}")
import { TwelveLabs } from 'twelvelabs-js';
const client = new TwelveLabs({ apiKey: '<YOUR_API_KEY>'});
const gist = await client.generate.gist('<YOUR_VIDEO_ID>', ['title']);
console.log(`Title: ${gist.title}`);
The output should look similar to the following one:
Title=A Day in My Life: Graduation, Moving Home, Shopping Hauls, Cooking, and Outdoor Adventures!
Generate titles, topics, and hashtags
To generate titles, topics, and hashtags based on the content of a video, invoke the gist
method of the generate
object with the following parameters:
video_id
: A string representing the unique identifier of the video for which you want to generate a title.types
: An array of strings representing the types of text you want to generate. This example uses["title", "topic", "hashtag"]
.
from twelvelabs import TwelveLabs
client = TwelveLabs(api_key="<YOUR_API_KEY>")
gist = client.generate.gist(
video_id="<YOUR_VIDEO_ID>",
types=["title", "topic", "hashtag"]
)
print(f"Title={gist.title}\nTopic={gist.topics}\nHashtags={gist.hashtags}")
import { TwelveLabs, SearchData } from 'twelvelabs-js';
const client = new TwelveLabs({ apiKey: '<YOUR_API_KEY>'});
const gist = await client.generate.gist('<YOUR_VIDEO_ID>', ['title', 'topic', 'hashtag']);
console.log(`Title: ${gist.title}\nTopics=${gist.topics}\nHashtags=${gist.hashtags}`);
The output should look similar to the following one:
Title=A Day in My Life: Graduation, Moving Home, Shopping Hauls, Cooking, and
Outdoor Adventures!
Topic=["Lifestyle Vlog"]
Hashtags=["graduation", "moving", "home", "shopping", "hauls", "cooking", "outdoor",
"adventures", "lifestyle", "vlog"]
Updated 2 days ago