Comments (6)
For now, my preference is to try something like below in furture releases
pip install tensorcircuit
# only requires numpy
pip install tensorcircuit[tensorflow]
# also install tensorflow
from tensorcircuit.
And I am also curious about whether it would be convenient for us to re-implement those utilities by uniform API of tc.backend.
It is more than welcome if anyone wants to make these utilities backend agnostic, which is a good first issue. These methods are in
tensorcircuit/tensorcircuit/quantum.py
Lines 1108 to 1388 in 41f0254
from tensorcircuit.
A very good question. Apart from the slow downloading due to the large size, TensorFlow as a requirement has other issues, too. Say in m1 mac, the package name is tensorflow-macos, which can lead to installation failure of tensorcircuit silently.
However, there are several reasons that support the inclusion of tensorflow as a requirement,
- some function utilities are now supported solely by tensorflow backend, such as
tc.quantum.heisenberg_hamiltonian
. - if there is no requirement of tensorflow, then no backend with automatic differentiation is enabled by default which may confuse the users especially for newcomers. Namely, one need to manually install many things to make tensorcircuit work as expected. (this point is the main reason that I keep tensorflow as a requirement because I don't want to scare new users away by failure after
pip install tensorcircuit
)
Still, to remove or not to remove tf as a requirement, is an question to me. Not sure which side is better, and would love to listen to more feedbacks.
from tensorcircuit.
2. if there is no requirement of tensorflow, then no backend with automatic differentiation is enabled by default which may confuse the users especially for newcomers. Namely, one need to manually install many things to make tensorcircuit work as expected. (this point is the main reason that I keep tensorflow as a requirement because I don't want to scare new users away by failure after
pip install tensorcircuit
)
For the second point, how about changing the installation guide to the following lines?
pip install tensorflow
pip install tensorcircuit
I suppose it will not be less friendly for new users.
from tensorcircuit.
- some function utilities are now supported solely by tensorflow backend, such as
tc.quantum.heisenberg_hamiltonian
.
And I am also curious about whether it would be convenient for us to re-implement those utilities by uniform API of tc.backend
.
from tensorcircuit.
closed, as the remaining issue is separately open in #161
from tensorcircuit.
Related Issues (20)
- Failed to transfer Tensor to Numpy when using jit HOT 2
- increase the abundance of the QAOA tutorial HOT 1
- docker file need updating HOT 2
- Wired input and output of function "c.amplitude" HOT 3
- Enhance <QAOA portfolio tutorial> HOT 4
- Fermion Gaussian State Simulator HOT 3
- Stabilizer simulator
- Backend agnostic implementation of quantum Hamiltonian generation
- Applying gates with jnp index HOT 7
- Support trainable adptive circuit HOT 2
- Implementation of SHVQE with QAS HOT 1
- tensor network representation of a tensor circuit HOT 2
- Allow sparse matrix as circuit input HOT 3
- AttributeError: module 'tensorflow' has no attribute 'sparse' HOT 2
- Bug in qiskit circuit parsing HOT 2
- jit compile circuit with any gate HOT 2
- `copy` operation of DM circuit forgets previous `apply_general_kraus` operations HOT 1
- MPS circuit with JIT compilation HOT 8
- Sampling from circuit does not give proper bitstring HOT 4
- Add Jittor backend HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tensorcircuit.