Instructions to use camenduru/text2video-zero with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Diffusers
How to use camenduru/text2video-zero with Diffusers:
pip install -U diffusers transformers accelerate
import torch from diffusers import DiffusionPipeline # switch to "mps" for apple devices pipe = DiffusionPipeline.from_pretrained("camenduru/text2video-zero", dtype=torch.bfloat16, device_map="cuda") prompt = "Astronaut in a jungle, cold color palette, muted colors, detailed, 8k" image = pipe(prompt).images[0] - Notebooks
- Google Colab
- Kaggle
Download node-gyp/14.16.0/include/node/cppgc/internal/finalizer-trait.h from camenduru/text2video-zero: direct link, hf CLI and curl.
- Browser
- Download file 2.57 kB
-
https://huggingface.co/camenduru/text2video-zero/resolve/main/node-gyp/14.16.0/include/node/cppgc/internal/finalizer-trait.h
- Command line
-
hf download hf://camenduru/text2video-zero/node-gyp/14.16.0/include/node/cppgc/internal/finalizer-trait.h
-
curl -L -o finalizer-trait.h https://huggingface.co/camenduru/text2video-zero/resolve/main/node-gyp/14.16.0/include/node/cppgc/internal/finalizer-trait.h
2.57 kB
| // Copyright 2020 the V8 project authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| namespace cppgc { | |
| namespace internal { | |
| using FinalizationCallback = void (*)(void*); | |
| template <typename T, typename = void> | |
| struct HasFinalizeGarbageCollectedObject : std::false_type {}; | |
| template <typename T> | |
| struct HasFinalizeGarbageCollectedObject< | |
| T, void_t<decltype(std::declval<T>().FinalizeGarbageCollectedObject())>> | |
| : std::true_type {}; | |
| // The FinalizerTraitImpl specifies how to finalize objects. | |
| template <typename T, bool isFinalized> | |
| struct FinalizerTraitImpl; | |
| template <typename T> | |
| struct FinalizerTraitImpl<T, true> { | |
| private: | |
| // Dispatch to custom FinalizeGarbageCollectedObject(). | |
| struct Custom { | |
| static void Call(void* obj) { | |
| static_cast<T*>(obj)->FinalizeGarbageCollectedObject(); | |
| } | |
| }; | |
| // Dispatch to regular destructor. | |
| struct Destructor { | |
| static void Call(void* obj) { static_cast<T*>(obj)->~T(); } | |
| }; | |
| using FinalizeImpl = | |
| std::conditional_t<HasFinalizeGarbageCollectedObject<T>::value, Custom, | |
| Destructor>; | |
| public: | |
| static void Finalize(void* obj) { | |
| static_assert(sizeof(T), "T must be fully defined"); | |
| FinalizeImpl::Call(obj); | |
| } | |
| }; | |
| template <typename T> | |
| struct FinalizerTraitImpl<T, false> { | |
| static void Finalize(void* obj) { | |
| static_assert(sizeof(T), "T must be fully defined"); | |
| } | |
| }; | |
| // The FinalizerTrait is used to determine if a type requires finalization and | |
| // what finalization means. | |
| template <typename T> | |
| struct FinalizerTrait { | |
| private: | |
| // Object has a finalizer if it has | |
| // - a custom FinalizeGarbageCollectedObject method, or | |
| // - a destructor. | |
| static constexpr bool kNonTrivialFinalizer = | |
| internal::HasFinalizeGarbageCollectedObject<T>::value || | |
| !std::is_trivially_destructible<typename std::remove_cv<T>::type>::value; | |
| static void Finalize(void* obj) { | |
| internal::FinalizerTraitImpl<T, kNonTrivialFinalizer>::Finalize(obj); | |
| } | |
| public: | |
| // The callback used to finalize an object of type T. | |
| static constexpr FinalizationCallback kCallback = | |
| kNonTrivialFinalizer ? Finalize : nullptr; | |
| }; | |
| template <typename T> | |
| constexpr FinalizationCallback FinalizerTrait<T>::kCallback; | |
| } // namespace internal | |
| } // namespace cppgc | |