@fchollet
You no longer need to leave Python to write high-performance hardware kernels. Learn how to use Pallas in Keras to author custom ops that lower to Mosaic for TPUs or Triton for GPUs: https://t.co/oeV4cmV4M0
Viewing enriched Twitter post
You no longer need to leave Python to write high-performance hardware kernels. Learn how to use Pallas in Keras to author custom ops that lower to Mosaic for TPUs or Triton for GPUs: https://t.co/oeV4cmV4M0
{
"media": [
{
"type": "photo",
"url": "https://crmoxkoizveukayfjuyo.supabase.co/storage/v1/object/public/media/posts/2009221193812128006/media_0.png?",
"filename": "media_0.png"
}
],
"processed_at": "2026-01-18T17:51:32.743289",
"pipeline_version": "2.0"
} {
"type": "tweet",
"id": "2009221193812128006",
"url": "https://x.com/fchollet/status/2009221193812128006",
"twitterUrl": "https://twitter.com/fchollet/status/2009221193812128006",
"text": "You no longer need to leave Python to write high-performance hardware kernels.\n\nLearn how to use Pallas in Keras to author custom ops that lower to Mosaic for TPUs or Triton for GPUs:\nhttps://t.co/oeV4cmV4M0",
"source": "Twitter for iPhone",
"retweetCount": 40,
"replyCount": 14,
"likeCount": 276,
"quoteCount": 1,
"viewCount": 43284,
"createdAt": "Thu Jan 08 11:10:36 +0000 2026",
"lang": "en",
"bookmarkCount": 151,
"isReply": false,
"inReplyToId": null,
"conversationId": "2009221193812128006",
"displayTextRange": [
0,
207
],
"inReplyToUserId": null,
"inReplyToUsername": null,
"author": {
"type": "user",
"userName": "fchollet",
"url": "https://x.com/fchollet",
"twitterUrl": "https://twitter.com/fchollet",
"id": "68746721",
"name": "François Chollet",
"isVerified": false,
"isBlueVerified": true,
"verifiedType": null,
"profilePicture": "https://pbs.twimg.com/profile_images/2006806326140350470/Kd5oZv-f_normal.jpg",
"coverPicture": "https://pbs.twimg.com/profile_banners/68746721/1463719109",
"description": "",
"location": "United States",
"followers": 597719,
"following": 823,
"status": "",
"canDm": false,
"canMediaTag": false,
"createdAt": "Tue Aug 25 17:09:25 +0000 2009",
"entities": {
"description": {
"urls": []
},
"url": {}
},
"fastFollowersCount": 0,
"favouritesCount": 10321,
"hasCustomTimelines": true,
"isTranslator": false,
"mediaCount": 1455,
"statusesCount": 24844,
"withheldInCountries": [],
"affiliatesHighlightedLabel": {},
"possiblySensitive": false,
"pinnedTweetIds": [
"1968676861430706451"
],
"profile_bio": {
"description": "Co-founder @ndea. Co-founder @arcprize. Creator of Keras and ARC-AGI. Author of 'Deep Learning with Python'.",
"entities": {
"description": {
"user_mentions": [
{
"id_str": "0",
"indices": [
11,
16
],
"name": "",
"screen_name": "ndea"
},
{
"id_str": "0",
"indices": [
29,
38
],
"name": "",
"screen_name": "arcprize"
}
]
},
"url": {
"urls": [
{
"display_url": "fchollet.com",
"expanded_url": "https://fchollet.com/",
"indices": [
0,
23
],
"url": "https://t.co/6miFIZS7Li"
}
]
}
}
},
"isAutomated": false,
"automatedBy": null
},
"extendedEntities": {},
"card": {
"binding_values": [
{
"key": "thumbnail_image",
"value": {
"image_value": {
"height": 144,
"url": "https://pbs.twimg.com/card_img/2010760292708278273/yFW6Iv4e?format=png&name=144x144_2",
"width": 144
}
}
},
{
"key": "domain",
"value": {
"string_value": "keras.io"
}
},
{
"key": "thumbnail_image_large",
"value": {
"image_value": {
"height": 222,
"url": "https://pbs.twimg.com/card_img/2010760292708278273/yFW6Iv4e?format=png&name=280x280_2",
"width": 222
}
}
},
{
"key": "thumbnail_image_original",
"value": {
"image_value": {
"height": 222,
"url": "https://pbs.twimg.com/card_img/2010760292708278273/yFW6Iv4e?format=png&name=orig",
"width": 222
}
}
},
{
"key": "thumbnail_image_small",
"value": {
"image_value": {
"height": 100,
"url": "https://pbs.twimg.com/card_img/2010760292708278273/yFW6Iv4e?format=png&name=100x100_2",
"width": 100
}
}
},
{
"key": "thumbnail_image_x_large",
"value": {
"image_value": {
"height": 222,
"url": "https://pbs.twimg.com/card_img/2010760292708278273/yFW6Iv4e?format=png&name=2048x2048_2_exp",
"width": 222
}
}
},
{
"key": "vanity_url",
"value": {
"scribe_key": "vanity_url",
"string_value": "keras.io"
}
},
{
"key": "thumbnail_image_color",
"value": {
"image_color_value": {
"palette": [
{
"percentage": 88.68,
"rgb": {
"blue": 0,
"green": 0,
"red": 208
}
},
{
"percentage": 10.79,
"rgb": {
"blue": 255,
"green": 255,
"red": 255
}
},
{
"percentage": 0.4,
"rgb": {
"blue": 152,
"green": 152,
"red": 235
}
},
{
"percentage": 0.12,
"rgb": {
"blue": 85,
"green": 85,
"red": 221
}
}
]
}
}
},
{
"key": "title",
"value": {
"string_value": "Keras documentation: Define a Custom TPU/GPU Kernel"
}
},
{
"key": "card_url",
"value": {
"scribe_key": "card_url",
"string_value": "https://t.co/oeV4cmV4M0"
}
}
],
"card_platform": {
"platform": {
"audience": {
"name": "production"
},
"device": {
"name": "iPhone",
"version": "13"
}
}
},
"name": "summary",
"url": "https://t.co/oeV4cmV4M0"
},
"place": {},
"entities": {
"urls": [
{
"display_url": "keras.io/guides/define_…",
"expanded_url": "https://keras.io/guides/define_custom_kernel/",
"indices": [
184,
207
],
"url": "https://t.co/oeV4cmV4M0"
}
]
},
"quoted_tweet": null,
"retweeted_tweet": null,
"isLimitedReply": false,
"article": null
}