- Text/Video-to-Video 2B: https://huggingface.co/THUDM/CogVideoX-2b
- Text/Video-to-Video 5B: https://huggingface.co/THUDM/CogVideoX-5b
- Image-to-Video 5B: https://huggingface.co/THUDM/CogVideoX-5b-I2V
- Original Repository: https://github.com/THUDM/CogVideo
- Diffusers documentation: https://huggingface.co/docs/diffusers/en/api/pipelines/cogvideox
- Diffusers-TorchAO quantization benchmarks: https://github.com/sayakpaul/diffusers-torchao/
- Diffusers-Quanto example: https://gist.github.com/a-r-r-o-w/31be62828b00a9292821b85c1017effa
- HF CogVideoX Space: https://huggingface.co/spaces/THUDM/CogVideoX-5B-Space
export class Cache<T extends object, K> { | |
items = new WeakMap<T, K>() | |
get<P extends T>(item: P, cb: (item: P) => K) { | |
if (!this.items.has(item)) { | |
this.items.set(item, cb(item)) | |
} | |
return this.items.get(item)! | |
} |
Creating an OAuth2 server is not a task that should be taken lightly. There are many security loopholes that could be exploited, and regular examinations are critical to handle possible vulnerabilities.
Auth is an authentication microservice based on the OAuth2 identity delegation protocol.
/** | |
* Implementation of the Critical Path Method (CPM) with variation | |
* @see http://en.wikipedia.org/wiki/Critical_path_method | |
* | |
* Shows all the critical Paths, returns a subset of the graph | |
* containing the critical activities | |
*/ | |
/** | |
* Activity Class |
Architecture is 'the important stuff, whatever that is' or 'the parts that are hard to change later'. An architect analyzes business, domain, and other requirements to develop solutions that satisfy a list of prioritized architectural characteristics (-ilities). We should consider time and change with respect to architecture, or evolvability.
Software ecosystems are in a state of dynamic equilibrium. New languages, tools, methods constant force new equilibriums to emerge (free OS, linux, + free operations, puppet, led to the shift to containers). The pace of change in technology is constantly and rapidly changing in unexpected ways. We should architect systems knowing the landscape will change. Make ease of change a principal of architecture, remove the 'hard to change' definition of architecture.
An evolutionary architecture supports guided, incremental change across multiple dimensions. Evolvability is a meta characteristic that
module.exports = function(app) { | |
var User = app.models.User; | |
// TODO: (1) find an example of how to add new "properties" to the built-in User mode via boot script | |
// (2) This is how you can add a "relationship" to the built-in User model via boot script | |
var SomeOtherModel = app.models.SomeOtherModel; | |
User.hasMany(SomeOtherModel, {as: 'someOtherModels', foreignKey: 'someOtherModelId'}); | |
// (3) This is how you can add "remote methods" to the built-in User model via boot script |
{ | |
// http://eslint.org/docs/rules/ | |
"env": { | |
"browser": true, // browser global variables. | |
"node": false, // Node.js global variables and Node.js-specific rules. | |
"worker": false, // web workers global variables. | |
"amd": false, // defines require() and define() as global variables as per the amd spec. | |
"mocha": false, // adds all of the Mocha testing global variables. | |
"jasmine": false, // adds all of the Jasmine testing global variables for version 1.3 and 2.0. |
{ | |
// http://eslint.org/docs/rules/ | |
"ecmaFeatures": { | |
"binaryLiterals": false, // enable binary literals | |
"blockBindings": false, // enable let and const (aka block bindings) | |
"defaultParams": false, // enable default function parameters | |
"forOf": false, // enable for-of loops | |
"generators": false, // enable generators | |
"objectLiteralComputedProperties": false, // enable computed object literal property names |